トップページ -> インストール,設定,利用 -> Ubuntu, Debian ソフトウエア -> virtualenv, virtualenv-wrapper の使用法(Ubuntu, Debian 上)
[サイトマップへ], [サイト内検索へ]

virtualenv, virtualenv-wrapper の使用法(Ubuntu, Debian 上)

[image] 金子邦彦研究室: データベース、人工知能(AI)、データサイエンスの融合により不可能を可能にする

【このページの目次】

  1. 前準備
  2. 性能の確認
  3. Python 3, Python 2, pip のインストールと確認
  4. virtualenv, virtualenv-wrapper のインストールと設定
  5. virtualenv を用いて Python バージョン3 環境の新規作成
  6. virtualenv を用いて Python バージョン2 環境の新規作成
  7. virtualenv, virtualenv-wrapper の確認
  8. spyder 開発版 のインストール
  9. virtualenv の Python バージョン 3 環境でSWIG を使ってみる

前準備

OS のシステム更新

Ubuntu, Debian で OS のシステム更新を行うときは, 端末で,次のコマンドを実行.

sudo apt update
sudo apt -yV upgrade
sudo /sbin/shutdown -r now

Python 3 のインストールと性能の確認

行列の積, 主成分分析, SVD, k-Means クラスタリングを実行し,性能を確認する.

まず,次のコマンドを実行し,Python 3 をインストールする.

sudo apt install python3-numpy python3-sklearn libopenblas-dev

性能の確認のため,次の

Python プログラムを動かす.

※ Python プログラムを動かすために, Ubuntu では「python3」コマンドを使う. あるいは, PyCharmなどにある Python コンソールも便利である.

import time
import numpy
import numpy.linalg
import sklearn.decomposition
import sklearn.cluster
X = numpy.random.rand(2000, 2000)
Y = numpy.random.rand(2000, 2000)
# 行列の積
a = time.time(); Z = numpy.dot(X, Y); print(time.time() - a)
# 主成分分析
pca = sklearn.decomposition.PCA(n_components = 2)
a = time.time(); pca.fit(X); X_pca = pca.transform(X); print(time.time() - a)
# SVD
a = time.time(); U, S, V = numpy.linalg.svd(X); print(time.time() - a)
# k-means
a = time.time(); 
kmeans_model = sklearn.cluster.KMeans(n_clusters=10, random_state=10).fit(X)
labels = kmeans_model.labels_
print(time.time() - a)

実行結果の例

[image]

Python 3, Python 2, pip のインストールと確認

  1. 端末を開く
  2. Python 3, Python 2, pip のインストール
    sudo apt -yV install python3-dev python3-pip
    sudo apt -yV install python-dev python-pip
    
  3. python のバージョンの確認

    ※ エラーメッセージが出ないことを確認.

    python3 --version 
    python --version 
    
  4. pip の更新
    cd /tmp
    sudo rm -f get-pip.py
    wget https://bootstrap.pypa.io/get-pip.py
    sudo rm -rf ~/.cache/pip
    mkdir ~/.cache/pip
    sudo python3 get-pip.py
    sudo python get-pip.py
    

    [image]
  5. pip3, pip の動作確認

    ※ エラーメッセージが出ないことを確認.

    pip3 list
    pip list
    

virtualenv, virtualenv-wrapper のインストールと設定

  1. 端末を開く
  2. virtualenv, virtualenv-wrapper のインストール
    sudo pip install -U virtualenv virtualenv-wrapper
    sudo pip3 install -U virtualenv virtualenv-wrapper
    echo -e "\n# virtualenv and virtualenv-wrapper" >> ~/.profile
    echo "export WORKON_HOME=$HOME/.virtualenvs" >> ~/.profile
    echo "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3" >> ~/.profile
    echo "source /usr/local/bin/virtualenv-wrapper.sh" >> ~/.profile
    source ~/.profile
    

    [image]
  3. virtualenv, virtualenv-wrapper の設定

    エラーメッセージが出ていないことを確認

    export WORKON_HOME=$HOME/.virtualenvs
    export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
    source /usr/local/bin/virtualenv-wrapper.sh
    touch ~/.profile
    echo -e "\n# virtualenv and virtualenv-wrapper" >> ~/.profile
    echo "export WORKON_HOME=$HOME/.virtualenvs" >> ~/.profile
    echo "export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3" >> ~/.profile
    echo "source /usr/local/bin/virtualenv-wrapper.sh" >> ~/.profile
    source ~/.profile
    

    [image]

    virtualenv-wrapper の使い方

    • mkvirtualenv <Python仮想環境名>: Python仮想環境の新規作成
    • workon: Python仮想環境の一覧表示
    • workon <Python仮想環境名>: Python仮想環境の有効化
    • deactivate: いま有効化されているPython仮想環境の無効化

virtualenv を用いて Python バージョン3 環境の新規作成

  1. 新しく端末を開く
  2. システムの python3 のバージョンの確認
    which python3
    python3 --version 
    

    Ubuntu 18.04 での実行結果の例

    [image]
  3. Python バージョン3 環境の新規作成

    名前: py36

    使用する Python: python3

    source /usr/local/bin/virtualenv-wrapper.sh
    mkvirtualenv --python=/usr/bin/python3 py36
    

    [image]
  4. 確認
    lsvirtualenv 
    

    py36」という新しい Python 環境が作成されたことが分かる

    [image]
  5. 確認 の続き

    新しく端末を開き、次のコマンドを実行.

    「workon py36」は、py36 の Python 環境の使用を開始するためのコマンド. エラーメッセージが出なければ OK.

    source /usr/local/bin/virtualenv-wrapper.sh
    workon py36
    which python
    which pip
    

    [image]
  6. 試しに、py36 の Python 環境の Python を使ってみる
    source /usr/local/bin/virtualenv-wrapper.sh
    workon py36
    python 
    print(1 + 2)
    exit()
    

    [image]

virtualenv を用いて Python バージョン 2 環境の新規作成

  1. 新しく端末を開く
  2. システムの python のバージョンの確認
    which python
    python --version 
    

    Ubuntu 18.04 での実行結果の例

    [image]
  3. Python 環境の新規作成
    source /usr/local/bin/virtualenv-wrapper.sh
    mkvirtualenv --python=/usr/bin/python py27
    

    [image]
  4. 確認
    lsvirtualenv 
    

    py27」という新しい Python 環境が作成されたことが分かる

    [image]
  5. 確認 の続き

    新しく端末を開き、次のコマンドを実行.

    「workon py27」は、py27 の Python 環境の使用を開始するためのコマンド. エラーメッセージが出なければ OK.

    source /usr/local/bin/virtualenv-wrapper.sh
    workon py27
    which python
    which pip
    

    [image]
  6. 試しに、py27 の Python 環境の Python を使ってみる
    source /usr/local/bin/virtualenv-wrapper.sh
    workon py27
    python 
    print(1 + 2)
    exit()
    

    [image]

virtualenv, virtualenv-wrapper の確認


spyder 開発版 のインストール

https://github.com/spyder-ide/spyder に記載の手順に従う

  • (オプション)もし、隔離された Python 仮想環境にインストールしていて、そこにインストールしたいとき、それを有効化する

    ※ 隔離された Python 仮想環境を有効化したいときに限る

    source /usr/local/bin/virtualenv-wrapper.sh
    workon ai
    
  • インストール操作
    sudo pip3 install -U PyQT5
    sudo pip3 install -U git+https://github.com/spyder-ide/spyder-kernels
    sudo pip3 install -U git+https://github.com/spyder-ide/qtpy
    cd /tmp
    sudo git clone https://github.com/spyder-ide/spyder.git
    cd spyder 
    git pull 
    python bootstrap.py
    sudo python3 setup.py install 
    

    「spyder3」で、試しに起動してみる.


    virtualenv の Python バージョン 3 環境で SWIG を使ってみる

    1. SWIG のインストール (Install swig)
      sudo apt -yV install swig
      
    2. プログラムファイルの作成

      http://www.swig.org/Doc1.3/Python.html#Python_nn6 に記載のサンプルプログラム

      • example.i
        %module example
        
        %{
        #define SWIG_FILE_WITH_INIT
        #include "example.h"
        %}
        
        int fact(int n);
        
      • example.c
        #include "example.h"
        
        int fact(int n) {
            if (n < 0){ /* This should probably return an error, but this is simpler */
                return 0;
            }
            if (n == 0) {
                return 1;
            }
            else {
                /* testing for overflow would be a good idea here */
                return n * fact(n-1);
            }
        }
        
      • example.h
        int fact(int n);
        
      • setup.py
        #!/usr/bin/env python
        
        """
        setup.py file for SWIG example
        """
        
        from distutils.core import setup, Extension
        
        
        example_module = Extension('_example',
                                   sources=['example_wrap.c', 'example.c'],
                                   )
        
        setup (name = 'example',
               version = '0.1',
               author      = "SWIG Docs",
               description = """Simple swig example from docs""",
               ext_modules = [example_module],
               py_modules = ["example"],
               )
        
    3. 新しく端末を開く
    4. プログラムファイルから、Python で実行可能にするためのファイルを作る

      端末で次のように操作

      source /usr/local/bin/virtualenv-wrapper.sh
      workon py36
      swig -python example.i
      sudo python3 setup.py build_ext --inplace
      ls -la example.* build 
      

      [image]
    5. python 処理系を起動し、次のプログラムを試してみる
      import example
      example.fact(4)
      exit()
      

    本サイトは金子邦彦研究室のWebページです.サイトマップは,サイトマップのページをご覧下さい. 本サイト内の検索は,サイト内検索のページをご利用下さい.

    問い合わせ先: 金子邦彦(かねこ くにひこ) [image]