为了账号安全,请及时绑定邮箱和手机立即绑定

Python元组,到底是什么意思

Python元组,到底是什么意思

临摹微笑 2021-10-26 16:58:39
(0,)==(0)False, in (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 不会像数学表达式那样解释 ('Suggest', 1.0) 吗?
查看完整描述

1 回答

?
HUH函数

TA贡献1836条经验 获得超4个赞

(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.


查看完整回答
反对 回复 2021-10-26
  • 1 回答
  • 0 关注
  • 171 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信