MacにPython 3.2をインストールしました。/ Applications / Python 3.2 / Update Shell Profile.commandを実行した後、ターミナルでpython -Vと入力すると、Python 2.6.1と表示されて混乱するのですが、どうすればデフォルトのpythonバージョンを変更できますか?
pyenv
。
MacにPython 3.2をインストールしました。/ Applications / Python 3.2 / Update Shell Profile.commandを実行した後、ターミナルでpython -Vと入力すると、Python 2.6.1と表示されて混乱するのですが、どうすればデフォルトのpythonバージョンを変更できますか?
pyenv
。
回答:
これはおそらく、下位互換性のために望ましいものです。
Python3は後方互換性を壊し、 'python'を呼び出すプログラムはおそらくpython2を期待します。おそらく気づいていない多くのプログラムとスクリプトがあり、それらはpython = python2を想定しているため、これを変更すると、それらのプログラムとスクリプトが破損します。
あなたがおそらく探している答えは、これを変更してはならないことですです。
ただし、シェルでカスタムエイリアスを作成することもできます。その方法はシェルによって異なりますが、おそらくあなたはそうすることができますalias py=python3
最新バージョンのpythonを開始する方法について混乱している場合、(上記の互換性の理由により)少なくともLinuxの場合はインストールがそのまま残りpython3
ます。したがって、コマンドでpython3を起動できます。python2
python3
python
指しているかを変更しないでください。変更すると、OSの重要なコンポーネントが破損する可能性があります。代わりに、別個のPython 3インストールと仮想化を使用して、「ローカル」のデフォルトPythonを自分に与えます。
Python 3の場所を確認する
$ which python3
/usr/local/bin/python3
bash_profileにエイリアスを書き込みます
vi ~/.bash_profile
alias python='/usr/local/bin/python3'
bash_profileをリロードします
source ~/.bash_profile
Pythonコマンドを確認する
$ python --version
Python 3.6.5
$ python
python 2用に予約されています。コンピューターで実行するpython 2を期待するプログラムはすべて、エイリアスが原因でpython 3を受け取ります。これにより、予期しない悪影響が生じる可能性があります。
Mac OS Xでは、どうやらpython.orgインストーラーを使用しているため、Python 3をpython3
でなくで起動する必要がありますpython
。現在、Python 2バージョン用に予約されています。を使用python3.2
して、そのバージョンを具体的に呼び出すこともできます。
$ which python
/usr/bin/python
$ which python3
/Library/Frameworks/Python.framework/Versions/3.2/bin/python3
$ cd /Library/Frameworks/Python.framework/Versions/3.2/bin/
$ ls -l
total 384
lrwxr-xr-x 1 root admin 8 Apr 28 15:51 2to3@ -> 2to3-3.2
-rwxrwxr-x 1 root admin 140 Feb 20 11:14 2to3-3.2*
lrwxr-xr-x 1 root admin 7 Apr 28 15:51 idle3@ -> idle3.2
-rwxrwxr-x 1 root admin 138 Feb 20 11:14 idle3.2*
lrwxr-xr-x 1 root admin 8 Apr 28 15:51 pydoc3@ -> pydoc3.2
-rwxrwxr-x 1 root admin 123 Feb 20 11:14 pydoc3.2*
-rwxrwxr-x 2 root admin 25624 Feb 20 11:14 python3*
lrwxr-xr-x 1 root admin 12 Apr 28 15:51 python3-32@ -> python3.2-32
lrwxr-xr-x 1 root admin 16 Apr 28 15:51 python3-config@ -> python3.2-config
-rwxrwxr-x 2 root admin 25624 Feb 20 11:14 python3.2*
-rwxrwxr-x 1 root admin 13964 Feb 20 11:14 python3.2-32*
lrwxr-xr-x 1 root admin 17 Apr 28 15:51 python3.2-config@ -> python3.2m-config
-rwxrwxr-x 1 root admin 25784 Feb 20 11:14 python3.2m*
-rwxrwxr-x 1 root admin 1865 Feb 20 11:14 python3.2m-config*
lrwxr-xr-x 1 root admin 10 Apr 28 15:51 pythonw3@ -> pythonw3.2
lrwxr-xr-x 1 root admin 13 Apr 28 15:51 pythonw3-32@ -> pythonw3.2-32
-rwxrwxr-x 1 root admin 25624 Feb 20 11:14 pythonw3.2*
-rwxrwxr-x 1 root admin 13964 Feb 20 11:14 pythonw3.2-32*
python.orgからPython 2もインストールした場合は、似たフレームワークbinディレクトリがあり、ファイル名が重複していません(2to3を除く)。
$ open /Applications/Python\ 2.7/Update\ Shell\ Profile.command
$ sh -l
$ echo $PATH
/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/3.2/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin
$ which python3
/Library/Frameworks/Python.framework/Versions/3.2/bin/python3
$ which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python
$ cd /Library/Frameworks/Python.framework/Versions/2.7/bin
$ ls -l
total 288
-rwxrwxr-x 1 root admin 150 Jul 3 2010 2to3*
lrwxr-x--- 1 root admin 7 Nov 8 23:14 idle@ -> idle2.7
-rwxrwxr-x 1 root admin 138 Jul 3 2010 idle2.7*
lrwxr-x--- 1 root admin 8 Nov 8 23:14 pydoc@ -> pydoc2.7
-rwxrwxr-x 1 root admin 123 Jul 3 2010 pydoc2.7*
lrwxr-x--- 1 root admin 9 Nov 8 23:14 python@ -> python2.7
lrwxr-x--- 1 root admin 16 Nov 8 23:14 python-config@ -> python2.7-config
-rwxrwxr-x 1 root admin 33764 Jul 3 2010 python2.7*
-rwxrwxr-x 1 root admin 1663 Jul 3 2010 python2.7-config*
lrwxr-x--- 1 root admin 10 Nov 8 23:14 pythonw@ -> pythonw2.7
-rwxrwxr-x 1 root admin 33764 Jul 3 2010 pythonw2.7*
lrwxr-x--- 1 root admin 11 Nov 8 23:14 smtpd.py@ -> smtpd2.7.py
-rwxrwxr-x 1 root admin 18272 Jul 3 2010 smtpd2.7.py*
古い質問ですが、代わりに:
virtualenv --python=python3.5 .venv
source .venv/bin/activate
正しいことをしてください、正しいことをしてください!
--->ゼロターミナルを開き、
-最初に入力python -V
、それはおそらく示しています:
Python 2.7.10
-2回目に入力python3 -V
、それはおそらく示しています:
Python 3.7.2
-3番目に入力where python
またはwhich python
、それはおそらく示します:
/usr/bin/python
--- 4番目の入力where python3
またはwhich python3
、それはおそらく示しています:
/usr/local/bin/python3
--Bash ~/.profile file or ~/.bash_profile
または~/.zshrc
zshの下のPATH環境変数ファイルの最後に次の行を追加します。
alias python='/usr/local/bin/python3'
または
alias python=python3
-Bashでの6番目の入力source ~/.bash_profile
またはsource ~/.zshrc
zsh。
--7番目に、ターミナルを終了します。
--- 8番目に端末を開いて入力しpython -V
ます。
Python 3.7.2
私はそれをうまく試しました。
その他、~/.bash_profile
zsh の下はそれではありません~/.bash_profile
。
代わりにzshの下のPATH環境変数~/.profile
(または~/.bash_file
)~/.zshrc
。
みんな助けて!
パスのシステムPythonの前に置くことにより、「デフォルト」のPythonを変更します。たとえば、次のようにします。
export PATH=/usr/local/bin:$PATH
Googleのクイック検索によると、このアップデートは現在開いているシェルにのみ適用されます。macとlinuxはこのようなことが一致するのに十分似ているため、おそらくpython3と入力することで修正できます。グーグル検索の結果へのリンク。
また、ninjageckoが述べたように、ほとんどのプログラムはまだ3.xに更新されていないため、デフォルトのpythonを3.xにすると、アプリケーションで使用される多くのpythonスクリプトが壊れます。
OS X 10.7.5とPython 3.4.2を使用しています。入力python3
して実行したいものを入力すると、Python 3を使用して実行され
pyhton3 test001.py
ます。それが私が作成したtest001というテストプログラムを実行しました。これがお役に立てば幸いです。
案内する:
マイコンピュータ->プロパティ->詳細設定->環境変数->システム変数
パス変数にすでにpython 2.7が追加されていて、デフォルトパスをpython 3.xに変更したいとします。
次に、python2.7パスの前にpython3.5.xフォルダのパスを追加します。
コマンドを開く:「python --version」と入力します
pythonバージョンはpython 3.5.xに変更されます
つまり、環境変数のパスを変更します。
Windowsの場合:
高度なSystem Settings > Advance (tab)
。下にあります'Environment Variables'
をダブルクリックしますPath
。Pythonインストールの1つへのパスが表示されるので、それを目的のバージョンのパスに変更します。
ライブラリがあるpython3の実行パスを確認する
$ which python3
/usr/local/bin/python3 some OS might have /usr/bin/python3
bash_profileファイルを開いてエイリアスを追加する
vi ~/.bash_profile
alias python='/usr/local/bin/python3' or alias python='/usr/bin/python3'
変更を有効にするためにbash_profileを再ロードします
source ~/.bash_profile
pythonコマンドを実行し、それがpython3でロードされているかどうかを確認します
$ python --version
Python 3.6.5