同じマシン上で Python 2.6 と 3.1 の両方を実行する
-
23-08-2019 - |
質問
現在、自宅で Python をいじっていますが、Python 3.1 に切り替える予定です。実際、Python 2.6 を使用するスクリプトがいくつかありますが、Python 3.1 atm では利用できないモジュールを使用しているため、それらを変換できません。そこで、Python 2.6 に加えて Python 3.1 をインストールすることを検討しています。インターネット上でPythonをソースからコンパイルして使用することでそれを達成している人だけを見つけました make altinstall
クラシックの代わりに make install
. 。とにかく、ソースからコンパイルするのは少し複雑だと思います。Linux では 2 つの異なるバージョンのプログラムを実行するのは簡単だと思いました (記録のために、私は Fedora 11 を実行しています)。何かヒントはありますか?
読んでくれてありがとう。
解決
私の Linux システム (Ubuntu Jaunty) には、バイナリ (deb) パッケージをインストールするだけで、Python 2.5、2.6、および 3.0 がインストールされています。 「Python2.5」, 「Python2.6」 そして 「Python3.0」 apt-getを使用します。おそらく Fedora は、同様の方法でそれらをパッケージ化し、RPM として名前を付けます。
コマンドラインから必要なものを実行するには、次のように入力するだけです。 python2.6
. 。したがって、たとえば次のようにして、スクリプトの先頭に必要なものを指定することもできます。
#!/usr/bin/python2.6
他のヒント
それuntarし、あなたが代替として持ちたいPythonのバージョンをダウンロードして、あなたはそれを構成する場合、使用--prefix = /私/ ALT / DIR
乾杯
Nik
あなたがそれらを一緒に実行する必要があることになっていない。
2.6はすでに3.0の機能のすべてを持っています。あなたはfrom __future__ import
文でこれらの機能を有効にすることができます。
これは、(いくつかのfrom __future__ import
付き)はるかに簡単実行2.6です。
なぜあなたはまったくmake install
を使用する必要がありますか? Pythonの3.xのをコンパイルするmake
行われた後、どこかのpythonフォルダを移動し、あなたの~/bin
ディレクトリにPythonの実行ファイルへのシンボリックリンクを作成します。それがまだない場合は、あなたのパスにそのディレクトリを追加し、あなたは準備ができて作業Pythonの開発版を使用する必要があります。限り、シンボリックリンク自体は名前が付いていないとして、Pythonが(私は私のpy
名付けました)、あなたが任意の衝突を経験することは決してないだろう。
追加の利点は、あなたがベータリリースを以下している場合、たとえば、Pythonの3.xの新しいリリースに変更したい場合、あなたは、単に新しいものとフォルダを、ダウンロードしてコンパイルと交換することです。
これは少し厄介ですが、乱雑には一つのディレクトリに閉じ込められている、と私はaltinstallsなどを考えるよりもはるかに便利見つけます。