|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
(源于:习题012 打了激素的03 )
小甲鱼的题目:将下边这个列表的'小甲鱼'修改为'小鱿鱼'?
list1 = [1, [1, 2, ['小甲鱼']], 3, 5, 8, 13, 18]
小甲鱼的答案:
list1[1][2][0] = '小鱿鱼'
请问:
1. 我想用remove和insert,可行么?我试了几次,都报错。请帮助,谢谢~
2. 怎们理解小甲鱼的答案?3个[],我看得出,是代表三个层级位置,但没有用 中括号套中括号再套中括号的方式,而是三个[]并列,Python这是按照什么思维逻辑设计和表达的呢?
本帖最后由 sunrise085 于 2020-1-2 14:31 编辑
列表嵌套,在列表内容显示的时候是[]嵌套,但是在索引的时候不可能是[]嵌套的,只能是[]并列,这是因为索引嵌套列表的元素,需要先索引外层列表相对应的序号,获得内部的列表,然后再索引内层列表的序号。你所说的remove和insert也是可行的,你尝试了报错可能是因为使用的不对吧。你可以看一下下列程序。
- list1 = [1, [1, 2, ['小甲鱼']], 3, 5, 8, 13, 18]
- print('list1[1]的内容是:',list1[1],',它的数据类型是:',type(list1[1]))
- print('list1[1][2]的内容是:',list1[1][2],',它的数据类型是:',type(list1[1][2]))
- print('list1[1][2][0]的内容是:',list1[1][2][0],',它的数据类型是:',type(list1[1][2][0]))
- print()
- list1[1][2].remove('小甲鱼')
- print('使用remove删除小甲鱼之后的列表list1:',list1)
- list1[1][2].insert(0,'小鱿鱼')
- print('使用insert插入小鱿鱼之后list1[1][2]的内容是:',list1[1][2])
- print('使用insert插入小鱿鱼之后的列表list1:',list1)
复制代码
运行结果如下:
- list1[1]的内容是: [1, 2, ['小甲鱼']] ,它的数据类型是: <class 'list'>
- list1[1][2]的内容是: ['小甲鱼'] ,它的数据类型是: <class 'list'>
- list1[1][2][0]的内容是: 小甲鱼 ,它的数据类型是: <class 'str'>
- 使用remove删除小甲鱼之后的列表list1: [1, [1, 2, []], 3, 5, 8, 13, 18]
- 使用insert插入小鱿鱼之后list1[1][2]的内容是: ['小鱿鱼']
- 使用insert插入小鱿鱼之后的列表list1: [1, [1, 2, ['小鱿鱼']], 3, 5, 8, 13, 18]
复制代码
|
|