Python列表和元组拆包

时间:2019-06-25 12:33:48

标签: python list tuples

首先感谢您回答我。 我在Python中有一个列表或一个元组;尝试解压缩而不是如下所示的索引:

list1 = [1,2,3,4]
first,second,third,fourth = list1

如果我这样使用它,现在可以了:

  

first ====>它将返回 1

但是当我在[]中使用它时,如下所示:

  

list1[first] ====>它将返回 2

接缝在这个mod中不会计算[0]索引! 为什么?以及如何解决?

3 个答案:

答案 0 :(得分:0)

first设置为1,因此获取列表的第二个元素正常。例如,如果将first设置为“垃圾邮件”,则list1[first]将会失败:

>>> list1 = ["spam", "egg"]
>>> first, second = list1
>>> list1[first]

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: list indices must be integers or slices, not str

我建议改用dict

 >>> dict1 = {"first": 1, "second": 2}
 >>> dict1["first"]
 1

答案 1 :(得分:0)

因为first保留整数1,所以list1 [first]实际上是list1 [1]

答案 2 :(得分:-1)

如果您希望将list1中的值用作基于1的索引,但又不想更改list1,则可以使用(例如):

list1[first-1]