蟒蛇元组,到底是什么意思

  • 本文关键字:是什么 元组 python
  • 更新时间 :
  • 英文 :

(0,)==(0)
False
(0

,)中的,是什么意思,什么时候有那种元组而不是像(0)这样的常规元组是有用的?

我认为这可能意味着索引 1 中的项目是 None 但事实并非如此:

(0,)[1]
Traceback (most recent call last):
  File "<input>", line 1, in <module>
IndexError: tuple index out of range

另外,如果我想让 (0,1,) 变成 (0,1),我该如何操作它?

编辑:

也许我过度简化了用于我的问题的示例,这是我的原始问题:

(('Suggest', 1.0), 65)==((('Suggest', 1.0),), 65)
False

所以我想 python 不会像数学表达式那样插入("建议",1.0)吗?

(0)不会被

Python解释为元组,而是解释为一个数值表达式(就像(1+2)一样,没有任何数学运算)。尾随逗号用于告诉 Python 它明确是一个 1 元素元组。

>>> type((0))
<type 'int'>
>>> type((0,))
<type 'tuple'>

(0)计算结果为一个数字:

>>> (0) == 0
True

(0,)计算为元组,元组不是数字...

(0,) == 0 假

。但是一个元组。

>>> (0,) == tuple([0])
True

这也不是特定于数字的 - (expression)总是等价于expression,而(expression,)将始终是一个单元素元组,元组中的第一个(也是唯一的)项是expression的结果。

相关内容

最新更新