Python 文档指定,如果函数仅采用单个参数,则省略括号是合法的,但是
myfunction "Hello!"
产生语法错误。那么,到底是怎么回事呢?
EDIT:
我读到的声明仅适用于生成器表达式:
在只有一个参数的调用中可以省略括号。
对于您的编辑:
如果你写下一个生成器表达式,例如stuff = (f(x) for x in items)
你需要括号,就像你需要[ .. ]
围绕列表理解。
但是,当您将某些内容从生成器表达式传递到函数时(这是一种非常常见的模式,因为这几乎是生成器背后的大思想),那么您不需要两组括号 - 而不是类似的东西s = sum((f(x) for x in items))
(外括号表示函数调用,内括号表示生成器表达式)你可以这样写sum(f(x) for x in items)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)