python2: print ステートメント、このステートメントは印刷するものを直接続けることができることを意味し、python3: print 関数、この関数は括弧を付けて呼び出す必要があると考えています。次の記事では、python2 と python3 の簡単な違いを紹介します。興味のある方は、エディターをフォローしてご覧ください。
python2: print ステートメント、このステートメントは、印刷するものを直接たどることができることを意味します. 直接印刷できるタプル オブジェクトが続く場合、
#python3: print 関数は、括弧を付けて呼び出す必要があると判断します。タプル オブジェクトに接続されている場合は、受信できます。
1. 式
Python 2 で計算式を取得するには、次のように入力します:
X = raw_input ("enter some values)
ログイン後にコピー
しかし、Python 3 では、次のように入力します。
X = input ("enter some values")
ログイン後にコピー
つまり、何を入力しても、その値は 2 と 3 の変数 x に代入されます。 Python 2 で 2*6 と入力すると、結果は評価値である 12 になります。
ただし、同じプログラムを Python 3 で実行すると、結果は文字列値になります。この場合、文字列形式では 2*6 のように見えます。
では、評価式はどうやって取得するのでしょうか?ここで、eval と呼ばれる式または関数を使用する必要があります。 input の前に eval を記述すると、式が計算値に変換されます。
3. Range 関数
Range は数値のリストを生成するために使用され、通常は for ループ内で反復するために使用されます。
ここで、X が範囲 10 に等しいことがわかります。変数 X をチェックすると、リスト型が返されました。これは、Python 2 では Range がリストの型であることを意味します。 X と書くと、オブジェクトのリストが得られます。0 1 2 3 4 5 6 7 8 9 です。
さあ、Python 3 に移りましょう。X が Range 5 と等しいと書くと、この値は変数 X に割り当てられます。変数 X の型をチェックすると、Range オブジェクト自体が返されます。これは、Python 3 では Range が範囲オブジェクトそのものであることを意味します。
以下は、python2 と python3 の 8 つの点の違いを簡単にまとめたものです
1. python2 のコードは、そのコードを書いた人が複雑で、繰り返しが多く、冗長です。当時は C 言語と Java の専門家でした。ダニエルをはじめとする巨匠なので、Python3 にはさまざまな言語の影があります。グイおじさんが企画した夏休みを経て、2018 年 11 月に最終的にコードが統一されました。ソースコードの仕様は、明確でシンプルで美しい。
2. python3 print ("content")、python2 ptint() または print 'content'
3. python3 エンコーディング: utf-8、python2 エンコーディング: デフォルトのエンコーディング: ascii 解決策:最初の行 # -*- エンコーディング: utf-8-*-
4. ユーザー インタラクション入力、python2: raw-input ()、python3: input ()
5. python2x: Unicode のデフォルトは 1 文字を表す 2 バイトです。LINUX のコンパイルおよびインストール中に調整できます。python3x: Unicode のデフォルトは 1 文字を表す 4 バイトです。
6. python2x には非ローカルがなく、python3x が追加されました
7. python3x の新規作成パッケージ内の init ファイルを削除してもパッケージは呼び出すことができますが、python2x の新規作成パッケージ内に init ファイルがない場合はパッケージを呼び出すことができず、エラーが表示されます。
8. Python2 のクラシッククラス トラバーサル メソッドは深さ優先で、新しいスタイルのクラスは幅優先です。Python3 にはクラシック クラスはありません。すべてのクラスは新しいスタイルのクラスです。 、つまり幅優先です。
以上がPython3 と Python2 に大きな違いがあるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。