【发布时间】:2019-10-23 05:04:14
【问题描述】:
python 中的tuple(在代码块中)由逗号定义;括号不是强制性的(在以下情况下)。所以这三个都是等价的:
a, b = 1, 2
a, b = (1, 2)
(a, b) = 1, 2
如果我定义一个函数
def f(a, b):
print(a, b)
以这种方式调用它会起作用:
f(2, 3)
这不会:
f((2, 3))
# TypeError: f() missing 1 required positional argument: 'b'
当元组是函数参数时,python 如何以不同的方式对待它们?这里括号是必要的(我理解为什么会出现这种情况,我很高兴python可以这样工作!)。
我的问题是:当元组是函数参数时,python 如何以不同的方式对待它们。
【问题讨论】:
标签: python python-3.x tuples python-internals