.join 内置函数在 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中做同样的事情时,它带来了这个错误:

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

在Python 3中,print是一个函数,而不是一个语句。要打印的内容需要用圆括号括起来。

同样,在你声称某些东西不能工作之前,你应该在交互式命令行上用一个最小的例子证明,那确实是不能工作的东西。

最新更新