システムに応じて、python== python2またはpython== python3。
実行可能なPythonスクリプト。
#!/usr/bin/env python
#!/usr/bin/env python2
#!/usr/bin/env python3...
Python py3kの場合、ドキュメントで提供されているので、バージョン番号で使用する必要があります/使用できるため、次のようにします。
#!/usr/bin/env python3
しかし、私はpy2kスクリプトに問題を発見しました。
滞在中py2kドキュメントには、使用に書き込まれます#! /usr/bin/env python、
一部の* nix-esでは、python py3kがデフォルトであるため、python == python3です。(たとえば、ArchLinux pythonパッケージ、ここではpythonパッケージファイル)。
それを処理するための配布用のpythonスクリプトをパッケージ化(構成、作成)および/または準備する方法は?
ユーザーが(環境を変更せずに)簡単に実行できるソフトウェアパッケージの作成について質問します
python py3kスクリプトと同じトリックをpython py2kスクリプトと同じようにして、次のように設定でき#!/usr/bin/env python2ますか?各python py2kディストリビューションにpython2ファイルが含まれていることを確認できます#!/usr/bin/env python2か?
はいの場合、なぜそれが標準として提案されていないのですか、たとえばpython py2kのドキュメントでは?
python2ます。なぜpy2kとpy3kがあり、デフォルトpythonが異なる場合にそれを使用することが標準ではないのかと思います。削除についてのあなたのアドバイスはどうですか-それはこの例には適切ではありません、私はパッケージングについて尋ねます。異なる構成/システムで実行できるパッケージを作成したいのですが。環境を変更する方法はありません。チェックについては- 私が知る限り、それはシバンには適用されません-。
#!...python2している場合はプログラムで使用し、Python 3.xを使用している場合はを使用することだと思います#!...python3。特定のリリースでのみ機能することがわかっている場合は、オペレーティングシステムが正しいリンクを持っているとは限りません。私は、Python 1.5.2がまだインストールされているシステムを/usr/bin/python使用していますpython2。古いPythonリリースを処理するコードを書くか、使用します。
python2私のシステムには実行ファイルがありません(Debian squeeze)。pythonはへのシンボリックリンクpython2.6でありpython3、へのシンボリックリンクですがpython3.1、はありませんpython2。
python2それを実行するために使用できます(インストールされている場合)、常にでバージョンを確認できますpython -V。それpythonが2または3であることが必要な場合はrm /usr/bin/python、必要なPythonバージョンからポイントするシンボリックリンクを作成する必要がありますln -s /usr/bin/python2.5 /usr/bin/python。