pip install - U numpy
がpythonのnumpyバージョンを更新しないという問題が発生しました。これは https://stackoverflow.com/questions/26390895/why-isnt-pip-updating-my-numpyに似ています) -and-scipy
したがって、自分のコンピューターに複数のpythonがあるかどうかは疑問です。
which -a python
を実行すると、次が返されます。
/usr/bin/python
/bin/python
これは、コンピューターに2つのpython=がコンピューターにあることを意味しますか?これがtrueの場合、それらの1つをアンインストールします。yum remove python
を試しました。ただし、これらの2つのpythonは引き続き表示されます、which -a python
を実行したとき。
which python
は、コマンドpython
でrunになる実行可能ファイルのみを通知します。つまり、-a
を指定しない限り、通常は引数ごとに正確に1つの結果を返します。 $PATH
環境変数内。ただし、すべての場合で同じpython
コマンドです。
システムにpython インストール済みのバージョンがいくつあるかを知りたい場合は、locate /python | grep /bin
またはls -l /usr/bin/python*
またはyum --showduplicates list python
を使用することをお勧めします。
2つのpython
インスタンスについては、 可能性はそれらの1つが[シンボリック]リンクである:which -a python | xargs ls -li
で確認してください。 pythonの特定のバージョンを削除する場合は、yum
コマンドラインでそのバージョン番号を指定する必要があります(例:yum remove python-2.7.2.el5s2
)。
[〜#〜] edit [〜#〜]: mattdm レポートと同様に、/bin
はFedora上の/usr/bin
へのシンボリックリンクです。したがって、これらの場所からrm
を使用してpythonを削除することはできません。そうしないと、pythonを削除してしまうことになります。-i
の引数この場合、which -a python | xargs ls -li
のls
は、両方のpythonインスタンスが同じiノードを持っていることを示します。
パッケージマネージャーの目的は依存関係の要件に従ってバージョンを適切にプルすることなので、バージョン固有のパッケージを手動で削除することは必須ではないことに注意してください。特定のバージョンがインストールされている場合、それは正当な理由でそこにあります。 1つを削除すると、他のパッケージも削除される可能性があります。
最後に、ディストリビューションのパッケージマネージャを使用して、パッケージとその依存関係、特にディストリビューションのリポジトリに属するものをインストールしてください。私は間違っているかもしれませんが、pip
を頼りにいくつかのメインパッケージを更新すると、パッケージマネージャーが混乱し、おそらく手作業で満足している依存関係がめちゃくちゃになります。 (実際、それは逆です:pip
に依存関係を管理させると、yum
を台無しにしてしまう可能性があります。)
最近のすべてのFedoraリリースでは、/bin
は/usr/bin
へのシンボリックリンクです。つまり、/ binを見ると、実際には/ usr/binにリダイレクトされます。ただし、bothは$PATH
(hmmm;おそらくクリーンアップする必要があります)に表示され、それがwhich -a python
で表示されるものです。実際に同一のバイナリ。
なので、ここでは問題ありません。
(ただし、pipとrpm(yum)をインストールするとcan、混乱する結果が生じ、場合によっては重複したバージョンのものがインストールされることに注意してください。)
皆さん、ありがとうございました。問題は解決されました。私のコンピューターにはpython3.3とpython2.7があります。 yum remove python3でpython3.3を削除します。
派手な問題は追加によって解決されます
export PYTHONPATH=$PYTHONPATH:/usr/lib64/python2.7/site-packages/
./bashrc
。