元组是以逗号分隔的值列表
所以声明元组的有效语法是:
tup = 'a', 'b', 'c', 'd'
Run Code Online (Sandbox Code Playgroud)
但我经常看到的是这样的声明:
tup = ('a', 'b', 'c', 'd')
Run Code Online (Sandbox Code Playgroud)
将元组括在括号中有什么好处?
Gen*_*liu 10
从Python文档:
...以便正确解释嵌套元组.元组可以在有或没有周围括号的情况下输入,尽管通常括号是必要的(如果元组是较大表达式的一部分).
嵌套元组的示例:
tuple = ('a', ('b', 'c'), 'd')
Run Code Online (Sandbox Code Playgroud)
括号只是括号-它们通过更改优先级来起作用。唯一的例外是,如果不包含任何内容(即()),则将生成一个空的元组。
但是,使用括号的原因是它会导致一个相当一致的符号。您可以以这种方式写入空元组和任何其他元组。
另一个原因是,通常希望文字比其他操作具有更高的优先级。例如,将添加两个元组(1,2)+(3,4)(如果省略此处的括号,则会得到结果1,2+3,4,这意味着先添加2和3然后再形成元组-结果为1,5,4)。类似的情况是,当您想将元组传递给函数时,f(1,2)意味着发送参数1和2,而f((1,2))手段是发送元组(1,2)。还有另一件事是,如果要在一个元组中包含一个元组((1,2),(3,4),这(1,2,3,4)是两件不同的事情。