Python认为我的元组是一个整数

时间:2015-11-16 12:12:39

标签: python indexing integer int tuples

我正在尝试打印出字符串中给定子字符串的位置,但是在第18行我不断收到错误

MqttCallback

我不知道为什么会这样,因为我是python的新手。但无论如何,这是我的计划:

Traceback (most recent call last):
  File "prog.py", line 18, in <module>
TypeError: 'int' object has no attribute '__getitem__'

1 个答案:

答案 0 :(得分:8)

tracked = (p)是一个整数,而不是元组。括号不一定会创建元组,因为它们也用于表达式中的运算符优先级。在这种情况下,它只是将其评估为表达式,以便(p)被评估为p。如果你想把它变成一个元组,你需要添加一个逗号(p,),这使它成为一个元组。

虽然在您的情况下,您尝试拨打tracked[1], tracked[2],但这两项都不会对单个项目元组有效。目前还不清楚你要做什么,但元组是明确不可变的(意思是它们不会改变,不能附加到等等),而且看起来列表更可能是你需要的。