在python3.10中 创建一个字符串
通过split对字符串进行分割 并输出列表
将列表中的第三个元素强制改为列表类型
也就是列表里套了一个列表
随后对这个大列表进行类型转换,转为元组类型
对元组内可变元素(被套的小列表)进行操作时 虽然type为list 但是对其操作时报错
s='hello|python|123'
a=s.split(sep='|') #对字符串分割,转化为list格式
a[2]=list(a[2]) # 将第三个元素转为list格式
aa=tuple(a)
print(aa[2],type(aa[2])) # ['1', '2', '3'] <class 'list'>
print(len(a[2])) # 3
在aa[2]后输入.append提示框里的操作语句都是对str操作的
没有对list的有关操作
由于元组内不能更改不可变元素类型,所以就在列表那一步里更改类型
更改完在小列表内的元素类型为str 但是应该不影响对整个列表的增删改
可以对aa[2]进行增删改操作
你直接敲就行,能执行,不报错
因为你多次强制转换类型,而且list套list,IDE会认不出你最里层的结构到底是个什么类型,所以点的时候点不出对应的方法,这很正常
毕竟python是解释性的语言,不是所有操作在一开始编译阶段IDE都能搞清楚
执行的时候能执行的
没有问题啊
>>> s = "hello|python|123"
>>> a=s.split("|")
>>> a
['hello', 'python', '123']
>>> a[2]=list(a[2])
>>> a
['hello', 'python', ['1', '2', '3']]
>>> aa = tuple(a)
>>> aa
('hello', 'python', ['1', '2', '3'])
>>> aa[2]
['1', '2', '3']
>>> aa[2].append(4)
>>> a
['hello', 'python', ['1', '2', '3', 4]]
>>>