Python 3.2へのアップグレード


22

lrucacheで提供される新しいfunctoolsを使用したいのですが、現在Python 2.6を使用していますが、これはサポートしていませんが、

Python 3.2にアップグレードできる最良の方法は何ですか?または、Python 2.6ディストリビューションで3.2リリースのitertools + functoolsを使用できる他の方法はありますか

ありがとうございました


たぶんこのレシピは便利ですか?
JanC

回答:


24

多くのプログラムとライブラリはPython 2.6(または11.04ではpython 2.7)に依存しており、python 2.xと3.xは互換性がないため、アップグレードできません-python 2.6と一緒にのみpython3をインストールできます。

Python 3.1

  • 幸いなことに、Python 3の安定版リリース(これを書いている時点では3.1.2)がリポジトリで提供されています。python3-all パッケージをインストールするだけです。

    あなたの通訳はの/usr/bin/python3代わりになり/usr/bin/pythonます。

    またpython3、Py2の代わりにPy3を起動するときに端末に入力することもできます。


Python 3.2

  • あなたは、することができますpython.orgからPythonのソースのいずれかのバージョンをダウンロードして実行

    ./configure
    make
    sudo make altinstall

    Pythonソースをコンパイルできるようにするには、いくつかのパッケージが必要です。

    sudo apt-get install build-essential libncursesw5-dev libreadline5-dev libssl-dev libgdbm-dev libc6-dev libsqlite3-dev tk-dev libbz2-dev

    altinstallオプションは、既存のPythonとともに他のバージョンのpythonをインストールします。

    ソースをダウンロードする代わりに、python devリポジトリから最新の開発リリースを頻繁にチェックアウトするのは理にかなっています:

    svn checkout http://svn.python.org/projects/python/branches/py3k

    これにより、最新の開発版、不安定版が提供されます。その後cd py3k/、上記のコンパイル手順を実行できます。

    このためには、もちろんsvn をインストールする必要があります。


1
この答えは素晴らしいです、私は賛成しました、しかし、私はより深くしたいです。新しいPythonを「python3.2」として呼び出すことができますが、これは問題ありませんが、個人用プログラムがデフォルトでこのバージョンを使用するように設定できます(たとえば、PATHの最初の「python」としてpython3.2を取得します)システムはpython2.6を安全に使用し続けていますか?「python3.2」を入力するのが好きではないからではなく、いくつかの理由から
ジョナサンハートリー

1
@Tartleyあなたのコメントはそこで途切れました。なぜあなたはそれをしたいのですか?
ステファノパラッツォ

1
(おっと、ありがとう。)...しかし、一部のツールには、たとえば 'python xxx.py'を使用してPythonコンポーネントを呼び出すbashスクリプトがあり、Python 3.2でのみ実行されるためです。だから、Python 3.2(およびそのすべてのスクリプト、ツールなど)が最初にパス上にあり、システムPython 2.6をシステムに残しておく環境(実際、個人のデフォルト環境にしたい)を作成したい使用(実際、好みにより、どのPythonを実行しているのか混乱しないようにするために、これを私の個人的なパスから削除したい)
ジョナサンハートリー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.