我知道这是一种方式,可以放一个逗号:
>>> empty = ()
>>> singleton = 'hello', # <-- note trailing comma
>>> len(empty)
0
>>> len(singleton)
1
>>> singleton
('hello',)
来源:http://docs.python.org/tutorial/datastructures.html
是否有更多方法可以定义仅包含1个项目的元组?
答案 0 :(得分:10)
>>> tuple(['hello'])
('hello',)
但内置语法是有原因的。
答案 1 :(得分:4)
即使您可以将元组定义为'hello',
,我认为如果他们正在阅读您的代码,可能很容易错过尾随的逗号。我绝对喜欢
('hello',)
来自可读性的观点。
答案 2 :(得分:2)
singleton = ('hello',)
我猜这更清楚了,@ jleedev更清楚了。但我喜欢你最好的方法:
singleton = 'hello',
答案 3 :(得分:2)
另一个是
>>> (1, 2)[0:1]
(1,)
一种非常模糊的方式,但它 是另一种选择......