ホームページ  >  記事  >  バックエンド開発  >  Python2とPython3を切り替える方法

Python2とPython3を切り替える方法

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼オリジナル
2019-06-19 16:36:386532ブラウズ

Python2とPython3を切り替える方法

python2 と python3 を切り替えるにはどうすればよいですか? Windows 環境と Linux 環境での切り替え方法を以下に紹介します。

Windows 環境:

Windows 環境 python2 と python3 を切り替えるにはどうすればよいですか?

を使用して py -3 を入力し、python3 を入力します

py -2 を入力して python2

を入力しますLinux 環境:

#Python の 2 つのバージョンが必要な理由

Python に接したことのあるすべての開発者は、Python2 と Python3 が次のバージョンであることを知っています。互換性がありません Python3 は未来ですが、Python2 を使用して開発されたプロジェクトはまだ多くあります。 Linux の多くのディストリビューション (Ubuntu など) には Python 2.7 が付属していますが、Python 3 プロジェクトを開発する準備ができたら、どうすればよいでしょうか?

次に、Python3 もダウンロードします。確かに、Linux 上で 2 つを一緒にインストールすることは可能ですが、問題は Python の 2 つのバージョンをどのように切り替えるかです。

1 エイリアスを変更します

まずデフォルトの Python バージョンを見てみましょう

$ python --versionPython 2.7.6

次にエイリアスを変更します

$ alias python='/usr/bin/python3'$ python --versionPython 3.4.3  # 版本已经改变

/usr/bin/python3 このパスはどのようにして見つけられたのでしょうか?

一般に、ソフトウェア バイナリ ファイルは /usr/bin または /usr/local/bin にあります (こちらの方が優先されます)。もちろん、Debian Linux を使用している場合は、次のように見つけることができます (Python3 がインストールされている場合):

$ dpkg -L python3

上記のエイリアスの変更は単なる一時的なものである場合、ウィンドウを再度開くと設定は消えます。各ウィンドウでこのエイリアスを使用する場合は、~/.bashrc (別のシェルを使用している場合は、このファイルではありません。zsh は ~/.zshrc など) を編集し、エイリアス構成をファイルに書き込むことができます。

エイリアスを変更する利点は、非常にシンプルですが、スイッチが柔軟性に欠けることです。

関連する推奨事項: 「Python ビデオ チュートリアル

2 リンク ファイル

/usr/bin にリンクを作成します。ファイルは Python3 を指します。

$ ln -s python /usr/bin/python3$ python --versionPython 3.4.3

エイリアスの変更と同様に、変更には十分な柔軟性がありません。

3 update-alternatives を使用してバージョンを切り替える

update-alternatives は Debian によって提供されるツールです (Debian でない場合は読む必要はありません)原理は上記と同様で、この方法もリンク経由ですが、切り替えプロセスは非常に便利です。

まず、Update-alternatives のヘルプ情報をご覧ください:

$ update-alternatives --help
用法:update-alternatives [<选项> ...] <命令>
 
命令:
  --install <链接> <名称> <路径> <优先级>
    [--slave <链接> <名称> <路径>] ...
                           在系统中加入一组候选项。
  --remove <名称> <路径>   从 <名称> 替换组中去除 <路径> 项。
  --remove-all <名称>      从替换系统中删除 <名称> 替换组。
  --auto <名称>            将 <名称> 的主链接切换到自动模式。
  --display <名称>         显示关于 <名称> 替换组的信息。
  --query <名称>           机器可读版的 --display <名称>.
  --list <名称>            列出 <名称> 替换组中所有的可用候选项。
  --get-selections         列出主要候选项名称以及它们的状态。
  --set-selections         从标准输入中读入候选项的状态。
  --config <名称>          列出 <名称> 替换组中的可选项,并就使用其中
                           哪一个,征询用户的意见。
  --set <名称> <路径>      将 <路径> 设置为 <名称> 的候选项。
  --all                    对所有可选项一一调用 --config 命令。
 
<链接> 是指向 /etc/alternatives/<名称> 的符号链接。
    (如 /usr/bin/pager)
<名称> 是该链接替换组的主控名。
    (如 pager)
<路径> 是候选项目标文件的位置。
    (如 /usr/bin/less)
<优先级> 是一个整数,在自动模式下,这个数字越高的选项,其优先级也就越高。
 
选项:
  --altdir <目录>          改变候选项目录。
  --admindir <目录>        设置 statoverride 文件的目录。
  --log <文件>             改变日志文件。
  --force                  就算没有通过自检,也强制执行操作。
  --skip-auto              在自动模式中跳过设置正确候选项的提示
                           (只与 --config 有关)
  --verbose                启用详细输出。
  --quiet                  安静模式,输出尽可能少的信息。不显示输出信息。
  --help                   显示本帮助信息。
  --version                显示版本信息。

--install 52a25b17b52424c09a9e188108722f11 af0c92e9f9d1400e4fba6230747949fe 91708595e1835e2bc8ff888c56372a26 d93d81cdd12b442d2a982f70506a8b23 : グループ候補の作成

--config 8a11bc632ea32a57b3e3693c7987c420: 8a11bc632ea32a57b3e3693c7987c420 グループのオプションを構成し、使用するオプションを選択します

--remove 8a11bc632ea32a57b3e3693c7987c420 91708595e1835e2bc8ff888c56372a26: af0c92e9f9d1400e4fba6230747949fe

からの 91708595e1835e2bc8ff888c56372a26 オプションまず、Python のオプションがあるかどうかを確認してみましょう:

$ update-alternatives --display pythonupdate-alternatives: 错误: 无 python 的候选项

次に、最初に Python グループを作成し、Python2 と Python3 のオプションを追加します

$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 2 # 添加Python2可选项,优先级为2
$ sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.4 1 #添加Python3可选项,优先级为1

ここの /usr/bin/python リンク ファイルでは、リンクする 2 つの異なるオプションを選択できるように、2 つのオプションが同じである必要があることに注意してください。

この時点で /usr/bin/python ファイルを見ると、すでに /etc/alternatives/python にリンクされていることがわかります。

lrwxrwxrwx 1 root root        24  6月 19 18:39 python -> /etc/alternatives/python

それではバージョンを見てみましょう

$ python --version
Python 2.7.6

なぜまだ Python2 なのでしょうか? 設定を見てみましょう

$ sudo update-alternatives --config python
有 2 个候选项可用于替换 python (提供 /usr/bin/python)。   
选择         路径           优先级     状态
------------------------------------------------------------
* 0     /usr/bin/python2.7       2      自动模式  
  1     /usr/bin/python2.7       2      手动模式  
  2     /usr/bin/python3.4       1      手动模式
要维持当前值[*]请按回车键,或者键入选择的编号:

それは自動モードであることがわかりましたデフォルトで選択されており、Python2 は Python3 よりも優先されます。Python3 を使用するには、この時点で 2 を入力するだけです。

オプションを削除する場合:

$ sudo update-alternatives --remove python /usr/bin/python2.7

update-alternatives は Debian ベースの Linux にのみ適用されます。

4 virtualenvwrapper バージョンの切り替え

virtualenvwrapper は、Python 仮想環境を管理するためのツールです。さまざまなプロジェクトに独立した環境を簡単に作成できます。各プロジェクトには、独自の依存関係をインストールできます。また、異なる仮想環境での異なるバージョンの Python の存在もサポートします。

最初に virtualenvwrapper をインストールします。apt インストールか pip インストールを選択できます

apt インストール

$ sudo apt-get install virtualenvwrapper

pip インストール

$ sudo pip install virtualenvwrapper

Python2 を使用して開発する必要がある場合プロジェクト、Python2 仮想環境を作成します:

$ mkvirtualenv -p /usr/bin/python2 env27

Python3 開発が必要な場合:

$ mkvirtualenv -p /usr/bin/python3.4 env34

その後、いつでも別の仮想環境に切り替えることができます:

$ workon env27  # 进入Python2环境$ workon env34  # 进入Python3环境

もっと楽しいです はい、仮想環境に入るときにプロジェクト ディレクトリに切り替えることができます。ファイル $VIRTUAL_ENV/bin/postactivate を編集するだけです:

$ vim $VIRTUAL_ENV/bin/postactivate  #前提是已经进入对应的虚拟环境

ファイルにディレクトリを切り替えるコマンドを追加します:

cd  /path/to/your/project

5 概要

##最初の 2 つの方法はお勧めできません。

Update-alternatives を使用したバージョンの切り替えは、Debian ベースの Linux にのみ適用されます。

仮想環境とバージョンを管理するには、virtualenvwrapper を使用することをお勧めします。

以上がPython2とPython3を切り替える方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。