有没有更多方法定义只有一个元素的元组?

9 投票
4 回答
4943 浏览
提问于 2025-04-15 19:24

我知道这样做是一个方法,就是在后面加一个逗号:

>>> empty = ()
>>> singleton = 'hello',    # <-- note trailing comma
>>> len(empty)
0
>>> len(singleton)
1
>>> singleton
('hello',)

来源:http://docs.python.org/tutorial/datastructures.html

还有其他方法可以定义只有一个元素的元组吗?

4 个回答

2

这里的singleton = ('hello',)表示创建了一个包含一个元素的元组,里面的元素是“hello”。

我觉得这样写更清楚一些,@jleedev的写法也更清晰。不过我最喜欢你用的方法:

singleton = 'hello',

5

虽然你可以把一个元组写成 'hello',,但我觉得如果有人在看你的代码时,可能会忽略掉后面的逗号。为了让代码更容易读懂,我更喜欢用 ('hello',) 这种写法。

13
>>> tuple(['hello'])
('hello',)

但是内置的语法是有原因的。

撰写回答