Python 2.x では、print
関数ではなくステートメントです。これを Python 3.x で試すと、うまくいきます。
Python 2.x では、print(x)
構文エラーではないと言えますが、実際には関数呼び出しではありません。1 + (3)
はPython 2.xと同じです1 + 3
。print(x)
print x
Python 2.x では、これを行うことができます。
def prn(x):
print x
次に、次のことができます。
map(prn, lst)
そしてそれはうまくいくでしょう。を返すlst = map(prn, lst)
ため、おそらくやりたくないことに注意してください。そのため、値のリストを値だけの同じ長さのリストに置き換えます。prn()
None
None
編集: Python 2.x の他の 2 つのソリューション。
の動作を完全に変更したい場合はprint
、次のようにします。
from __future__ import print_function
map(print, lst)
これはprint
Python 3.x と同じように関数になるため、 で動作しmap()
ます。
または、これを行うことができます:
from pprint import pprint
map(pprint, lst)
pprint()
物を印刷する機能であり、組み込みとして利用できます。デフォルトとどう違うのか正確にはわかりませんprint
(「プリティプリント」機能だと言っていますが、それがどのように違うのか正確にはわかりません)。
また、PEP 8 標準によるとl
、変数名として使用することは推奨されていないためlst
、例では代わりに使用しています。
http://www.python.org/dev/peps/pep-0008/