0

私が常に一緒に働いている人は、python 2.5 と 2.7 で書かれたプログラムを python 3.3 に更新することについて、私が留保しています。私はバイオインフォマティクスで働いており、使用しようとしている多くのPythonコードは3.0より前であり、仮想マシンで2.7を実行するLinuxを持っていますが、メインマシンではすでにPython 3.3でプログラムを開発していますそれ。プログラムがライブラリに大きく依存している場合、互換性の問題が発生する可能性があることは理解していますが、それ以外に、アップグレードに少し時間を費やすことができない理由がわかりません。このプログラムのほとんどは、数百行のコードにすぎないことを明確にしておく必要があると思います。

私が本当に知りたいのは;

プログラムの動作が異なる可能性がある 2 つのバージョンの間に実際の違いはありますか?

print を print() に、または urlib2 を update urlib に変更するだけで、単純に 3.3 に更新してクリーンアップすることは可能ですか?

4

3 に答える 3

0

余談ですが、あなたは2to3に精通していますか?

「うまくいかない」可能性のあるもののリストは、基本的に、この Q+A 形式には大きすぎます。 コードの移植に関するドキュメントの説明は次のとおりです。最も重要なポイントは、適切に記述されたテストを作成することですが、学界では、それが常に現実的であるとは限らないことを認識しています. その代わりに、自動化が検出できない/検出できない最も一般的な問題については、「落とし穴」セクションを参照してください。

アカデミック コードで最もよく目にする 2 つは、整数除算への依存と非バイナリ モードでのファイルのオープンです。詳細がわからないので、気をつけてください。

于 2013-08-06T17:07:21.897 に答える
0

SO がこの質問をするのに最適な場所かどうかはわかりませんが、このリンクは Python 2.x と 3.x のすべての違いをリストしています: http://docs.python.org/3.0/whatsnew/3.0.html

これを読めば、2.x プログラムを 3.x に移行するために何をする必要があるかが簡単にわかります。

于 2013-08-06T17:01:02.643 に答える