最新バージョンのpython3.3.0をダウンロードし、インストールを完了しました。centOSlinuxで実行したいのですが、コンソール「python」で入力すると、osインストールにバンドルされているpython2.7.0が実行されます。3を実行するように変更するにはどうすればよいですか?binフォルダなどのパスに関するコードを変更する必要があると漠然と感じています
2 に答える
コマンドを試す:
python3.3
または
python3
Pythonコマンドと互換性http://www.python.org/dev/peps/pep-0394/
Python3をPython2にシンボリックリンクしてシステムのデフォルトを変更しないでpython
ください。これにより、システムのデフォルトがPython 2.x(起動スクリプト、アプリケーションなどで参照される)であるという事実に依存するオペレーティングシステムが破損する可能性があります。
コマンドを入力するときにPython3を実行する場合はpython
、シェル構成ファイルに次を追加します。
alias python=python3
コマンドラインから実行する場合python
、という名前の実行可能ファイルの検索順序は、環境変数 python
によって決定されます。パスの検索順序が表示されます。以前のディレクトリは後者のディレクトリよりも優先されます。$PATH
echo $PATH
入力すると、マシンが検索パスwhich python
の最初であると判断したものが表示されます。python
ただし、ほとんどの場合、Pythonバイナリを指すシンボリックリンクが内部にある/usr/local/bin
か/usr/bin
名前が付けられている場合です。python
ほとんどのシステムでは、実際には2つのシンボリックリンクがあります。
python -> pythonX
pythonX -> pythonX.Y
例えば、
python -> python2
python2 -> python2.7
あなたはあなたpython
が実際に次のようなものとの単なるシンボリックリンクであるかどうかを見ることができます
ls -l $(which python)
私の場合、これは私に与えます:
/usr/local/bin/python -> python2
pythonがpython2へのシンボリックリンクであることを示す
次のように入力してさらに先に進むことができます
ls -l $(which python2)
私の場合、これは私に与えます
/usr/local/bin/python2 -> python2.7
とにかく、いくつかの選択肢があります
1)食物連鎖の上位のディレクトリ(リストの前のディレクトリ)に、python
必要なPythonバージョン(おそらく)へのシンボリックリンクを追加します。たとえば、通常は。よりも高くなります。python3
$PATH
/usr/local/bin
/usr/bin
2)現在のpython
シンボリックリンクを変更して、必要なPythonバージョンを指すようにします。通常、これはforce-f
フラグをに追加することによって行われln
ます。
python3
3)コマンドラインで入力するか#!/bin/env python3
、スクリプトでハッシュバンとして使用して、Python3.xを実行することを明示的に示します。
4).bashrcまたは同等のファイル(例python
)のエイリアス。python3
alias python='/path/to/python3
最初の2つのオプションは、予想よりも広範囲に及ぶ影響を与える可能性があります。たとえば、yum
パッケージマネージャーはを指定するだけなので、パッケージマネージャーを壊しますpython
。
3つ目は少し面倒になるかもしれませんが、より正確であり、特にpython3と呼ぶスクリプトを除いて、デフォルトですべてがpython2を使用できるようになります。
最後はまともな妥協点であり、入力するだけでpython
他のユーザーに影響を与えることはありません。
それは本当にあなた次第です。