Python

Pythonでバージョン確認や切り替える方法について

By 2021年9月25日No Comments

この記事では、Pythonのバージョン確認やバージョンを切り替える方法について解説します。

Pythonのバージョンは2系と3系の2つがあり文法や機能面も違い互換性がありません。pyenvを使うとPythonのバージョンを切り替える事ができます。

コマンドラインでPythonのバージョン(Version)を確認する方法

使用しているPCにインストールされているPythonのバージョンや実際にスクリプトで実行されているPythonのバージョンを確認します。

WindowsならコマンドプロンプトでMacならターミナルなどで下記のように確認する事ができます。

% python --version

出力結果:

Python 2.7.8 
% python -V

出力結果:

Python 2.7.8 

Python3系のバージョン確認は下記になります。

% python3 --version

出力結果:

Python 3.8.2
% python3 -V

出力結果:

Python 3.8.2

Python3.6以降のバージョンから下記のようにコマンドラインで指定すると詳しい情報を取得する事ができます。

python3 -VV

出力結果:

Python 3.8.2 (default, Apr 8 2021, 23:19:18)
[Clang 12.0.5 (clang-1205.0.22.9)]

出力結果の詳細はPythonインタプリタのバージョン番号やビルド番号、使用コンパイラなどの情報が取得されています。

Pythonの標準ライブラリであるsysモジュール使うと実行されているPythonのバージョンを取得してprint( )関数で出力して確認する事ができます。

sysモジュールをインポートしてprint( )関数でversionを出力します。

import sys

print(sys.version)

出力結果:

3.8.2 (default, Apr 8 2021, 23:19:18)
[Clang 12.0.5 (clang-1205.0.22.9)]

バージョン番号を含む様々な情報を文字列で出力する事ができました。

sys.version_infoでPythonのバージョン番号をタプルで取得する事ができます。

import sys
print(sys.version_info)

出力結果:

sys.version_info(major=3, minor=8, micro=2, releaselevel='final', serial=0)

Pythonのバージョン番号を示す5つの値のタプルの要素はmajor、minor、micro、releaselevel、serialで取得されています。実行されているのがPython2系かPython3系かの確認するにはmajorの数値を確認します。

バージョン番号を示すmajor、minor、micro、releaselevel、serialの要素を直接指定する事もできます。

import sys

print(sys.version_info.major)
print(sys.version_info.minor)
print(sys.version_info.micro)
print(sys.version_info.releaselevel)
print(sys.version_info.serial)

出力結果:

3
8
2
final
0

バージョン番号を示す要素を直接指定する事ができました。Python2系はバージョン2.7からPython3系はバージョン3.1から使う事ができます。それより前のPythonのバージョンで実行する場合はインデックス番号で指定する必要があります。

import sys
print(sys.version_info[1])

出力結果:

8

インデックス番号を指定して値を取得する事ができました。

platformモジュールでもPythonのバージョンを取得して確認する事もできます。まずは、platformモジュールをインポートします。

import platform

python_version( )関数を使うとバージョン番号の文字列を取得できます。

import platform
print(platform.python_version())

出力結果:

3.8.2

python_version_tuple( )関数を使うとバージョン番号の文字列をタプルで取得する事ができます。

import platform
print(platform.python_version_tuple())

出力結果:

('3', '8', '2')

Pythonのバージョンを、文字列のタプル (major, minor, patchlevel) が返されたのが確認できます。

Pythonのバージョン(Version)を切り替える方法

pyenvを使うとインストールされているPythonのバージョンを切り替える事ができます。下記のようにコマンドラインで指定するとインストールできるPythonのバージョン一覧が表示されます。

% pyenv install -l

 出力結果:

Available versions:
2.1.3
2.2.3
2.3.7
2.4.0
...( 以下略)

今回はPythonのバージョンを切り替えるためにPythonのバージョンを2つインストールします。

コマンドラインで下記のように指定するとインストールする事ができます。

pyenv install バージョン

指定のバージョンを2つインストールします。

% pyenv install 3.8.2
% pyenv install 2.7.8

下記のように指定するとコマンドでインストール済みのバージョンが表示されます。

% pyenv versions

出力結果:

system
*3.8.2(set by /Users/ディレクトリ名/.pyenv/version)
2.7.8 

下記のようにコマンドでlocalを指定するとカレントディレクトリ内で使用するPythonのバージョンを切り替えて使用する事ができます。

pyenv local バージョン

% pyenv local 2.7.8
% python --version

出力結果:

Python 2.7.8
%pyenv local 3.8.2
%python --version

出力結果:

Python 3.8.2

システム全体で使用するPythonのバージョンを決定するにはコマンドでglobalを指定します。

pyenv global. バージョン 

%pyenv global 2.7.8
%python --version

出力結果:

Python 2.7.8
%pyenv global 3.8.2
%python --version

出力結果:

Python 3.8.2

このようにpyenvを使うとPythonの2系と3系バージョンを切り替える事ができます。

まとめ

Pythonでバージョンの確認や切り替える方法について解説しました。

Pythonのバージョン確認をすると複数のバージョンのPythonがインストールされている環境で、どのPythonのバージョンが使われているか確認する事ができてコマンドラインでpyenvを使いPythonのバージョンを切り替える事ができます。以上、Pythonでバージョンの確認や切り替える方法についてでした。

Udemyの動画学習でもPythonを勉強しよう!

「平日の夜の勉強会には時間が間に合わなくて参加できない」「通勤時間のわずかな隙間時間を勉強時間にあてたい」「本ではよく分からないところを動画で理解を深めたい」そんなあなたはUdemyの動画学習がお勧めです!

UdemyのPythonおすすめ33講座レビューリスト
HOSL

Author HOSL

More posts by HOSL