我正在尝试从在线课程中学习 python in shell (jupyter notebook) /(anaconda prompt) 中元组的使用。我被困在元组部分
I am trying to learn use of tuple in python in shell (jupyter notebook) /(anaconda prompt) , from online courses . I got stuck on tuple part
我的导师说元组是列表类型,它是不可变的。
但我试过代码
>>>tuple1=[3,4,5,6]
>>>tuple1[1]=44
>>>tuple1
[3,44,5,6]
>>>list[3]=66
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'type' object does not support item assignment
>>> s=['hi','hello',33]
>>> list[1]='hitech'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'type' object does not support item assignment
这是输出。但我不知道为什么它没有显示
<Error>
您的老师关于元组不可变的说法是正确的,但您的 "tuple" 实际上是一个列表(带方括号)。
>>> tuple1 = [3, 4, 5, 6]
>>> type(tuple1)
<class 'list'>
>>> tuple1 = (3, 4, 5, 6)
>>> type(tuple1)
<class 'tuple'>
>>> tuple1[1] = 44
Traceback (most recent call last):
File "<input>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
另一个问题是您试图从 built-in list
中获取项目而不是实际列表。
>>> my_list = [1, 2, 3, 4]
>>> my_list[3] = 66
>>> my_list
[1, 2, 3, 66]
>>> type(list)
<class 'type'>
>>> list[3]
Traceback (most recent call last):
File "<input>", line 1, in <module>
TypeError: 'type' object is not subscriptable
我的导师说元组是列表类型,它是不可变的。 但我试过代码
>>>tuple1=[3,4,5,6]
>>>tuple1[1]=44
>>>tuple1
[3,44,5,6]
>>>list[3]=66
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'type' object does not support item assignment
>>> s=['hi','hello',33]
>>> list[1]='hitech'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'type' object does not support item assignment
这是输出。但我不知道为什么它没有显示
<Error>
您的老师关于元组不可变的说法是正确的,但您的 "tuple" 实际上是一个列表(带方括号)。
>>> tuple1 = [3, 4, 5, 6]
>>> type(tuple1)
<class 'list'>
>>> tuple1 = (3, 4, 5, 6)
>>> type(tuple1)
<class 'tuple'>
>>> tuple1[1] = 44
Traceback (most recent call last):
File "<input>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
另一个问题是您试图从 built-in list
中获取项目而不是实际列表。
>>> my_list = [1, 2, 3, 4]
>>> my_list[3] = 66
>>> my_list
[1, 2, 3, 66]
>>> type(list)
<class 'type'>
>>> list[3]
Traceback (most recent call last):
File "<input>", line 1, in <module>
TypeError: 'type' object is not subscriptable