2016-09-07 10 views
-2

だから、私はこの単純なコードを書いています。このコードは、リストのリストを引数として取り、各サブリストの項目を合計します。。組み込み関数がpython3.5で動作しない

def addItems(li): 

    for k in li: 
     sum = 0 
     for i in k: 
      sum += i 

     print " + ".join(["%d" % (i) for i in k]) + " = %d" % (sum) 

私はpython2.7でモジュールをインポートしようとすると成功します。私はpython3.5で同じことをしようとすると、

は、しかし、それはこのエラーれます:Pythonの3では

Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
    File "/home/george/Desktop/random/pyproj/myLibs/firstLib.py", line 9 
    print " + ".join(["%d" % (i) for i in k]) + " = %d" % (sum) 
      ^
SyntaxError: invalid syntax 
+1

要するに、 Python 3では 'print'は関数になっていますので、' print( 'things goes here') 'のように呼び出す必要があります。 – idjaw

+0

重複ではありませんが、私の質問に答えました!ありがとうございました! – docff

+3

間違いなく重複しています。これはPython 2で動作します。これは、 'print'がPython 2の文であるためです。括弧は必要ありません。 Python 3では、 'print'が関数であるため、これを使う必要があります。それは*正確に*その重複するリンクが説明しているものです。 https://docs.python.org/3.0/whatsnew/3.0.html#print-is-a-function – idjaw

答えて

0

を、プリント機能、ない文です。印刷したいものの周りにかっこが必要です。

また、何かがうまくいかないと主張する前に、対話的なコマンドラインと最小限の例で、実際にはうまくいかないことを証明する必要があります。

関連する問題