鱼C论坛

 找回密码
 立即注册
查看: 1624|回复: 13

[已解决]关于012讲的课后作业问题

[复制链接]
发表于 2021-11-18 08:43:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
list1 = [1, [1, 2, ['小甲鱼']], 3, 5, 8, 13, 18]
list1[1][2][0] = '小鱿鱼'

结果是把小甲鱼换成了小鱿鱼


list1[0]
结果是1

我理解为 第一个[] 是代表第几个元素是1

那么 list1[1]

结果就是list1 列表的
[1, 2, ['小甲鱼']]

我理解了 第一个[] 是表明第几个元素

第二个[]

第三个[]

我实在无法理解这2个[] []的具体含义 自己脑海里过了即便 也在runoob查了好几趟也没查到一个列表里面有2 3个【】【】【】的具体含义

求大家教教
最佳答案
2021-11-18 08:51:53
不论第几个[],都是代表的第几个元素
list1[1] == [1, 2, ['小甲鱼']]
list1[1][2] == [1, 2, ['小甲鱼']][2] == ['小甲鱼']
list1[1][2][0] ==  [1, 2, ['小甲鱼']][2][0] ==  ['小甲鱼'][0] == '小甲鱼'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-11-18 08:47:43 | 显示全部楼层
虽然看起来我只写了这么点
但是我从6点思考到现在也没具体的答案

现在脑子有点糊涂就没写上来自己的想法
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-18 08:51:53 | 显示全部楼层    本楼为最佳答案   
不论第几个[],都是代表的第几个元素
list1[1] == [1, 2, ['小甲鱼']]
list1[1][2] == [1, 2, ['小甲鱼']][2] == ['小甲鱼']
list1[1][2][0] ==  [1, 2, ['小甲鱼']][2][0] ==  ['小甲鱼'][0] == '小甲鱼'
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-18 08:52:52 | 显示全部楼层
本帖最后由 jackz007 于 2021-11-18 09:00 编辑

        忽视多层方括号,只留下最后那一层,把他们视为普通变量,然后,对普通变量切片。
list1 = [1, [1, 2, ['小甲鱼']], 3, 5, 8, 13, 18]
list1[0] = 1
list1[1] = [1, 2, ['小甲鱼']]
list1[2] = 3
. . . . . .
list1[1] = [1, 2, ['小甲鱼']]
list[1][0] = 1           #   列表切片:把 list1[1] 视为变量名
list[1][1] = 2           #   列表切片:把 list1[1] 视为变量名
list[1][2] = ['小甲鱼']  #   列表切片:把 list1[1] 视为变量名
list[1][2][0]= '小'      # 字符串切片:把 list1[1][2] 视为变量名
list[1][2][1]= '甲'      # 字符串切片:把 list1[1][2] 视为变量名
list[1][2][2]= '鱼'      # 字符串切片:把 list1[1][2] 视为变量名
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-18 09:06:14 | 显示全部楼层
数组下标是从 0 开始的,而并不是1.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-18 09:51:44 | 显示全部楼层
我理解是这样的:调出,list[1]下标内的第n个列表 , 就是嵌套吧     , 例如: list1 = [1,[3,4['哇哈哈']],5,6,7]   
<<< list1[0] == [1]     //下标
<<<list1[1] == [3,4,['哇哈哈']]    //嵌套了3个,下标:0,1,2
这里:list1[1] == [3,4['哇哈哈']]   组合:list1[1][2]   //理解为:列表第[1]个下标,内包含的第二个下标值 ,(就是嵌套啦)【1】---->包含【0】,[1] , [2] .....  结果就是:['娃哈哈']
那第三个元素,我想也是这样,【0】没有的话直接仍出去 ‘娃哈哈’

以上是我个人理解,如有误还请指正,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-18 10:16:49 | 显示全部楼层
逃兵 发表于 2021-11-18 08:51
不论第几个[],都是代表的第几个元素
list1[1] == [1, 2, ['小甲鱼']]
list1[1][2] == [1, 2, ['小甲鱼'] ...

我刚刚去实践了一下
list1 [1][2] = '小鱿鱼'

好像不用0也可以修改到小鱿鱼 这个0究竟是什么呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-18 10:20:03 | 显示全部楼层
逃兵 发表于 2021-11-18 08:51
不论第几个[],都是代表的第几个元素
list1[1] == [1, 2, ['小甲鱼']]
list1[1][2] == [1, 2, ['小甲鱼'] ...

噢我明白了 不带0的话里面的全部东西都会被改掉 写0的话可以只改动第一个
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-18 10:31:03 | 显示全部楼层
cs524712 发表于 2021-11-18 10:20
噢我明白了 不带0的话里面的全部东西都会被改掉 写0的话可以只改动第一个

不带[0]
是['小甲鱼'],这是一个列表,里面存储一个字符串元素
带[0]
是'小甲鱼',这是一个字符串
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-18 10:43:58 | 显示全部楼层
我终于想明白了

经过前面几个大哥的解释 我感觉还是模模糊糊的

我自己再试了一下 果然是对的
list1 = [1, [1, 2, ['小甲鱼',[998,[666,777,888]]]], 3, 5, 8, 13, 18]
如果我要修改888的话
其实理论就是
list1 [1][2][1][1] [2]= 6

list1 [1] 框架里面的[2]框架
到了[2]框架以后又从头开始计数
变成了[2]框架里面的1框架
1框架里面又框了一个 所以还是1框架

也不知道这样理解对不对 反正是成功修改了的
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-18 10:52:19 | 显示全部楼层
逃兵 发表于 2021-11-18 10:31
不带[0]
是['小甲鱼'],这是一个列表,里面存储一个字符串元素
带[0]

大哥帮我看看我最新的理解对不
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-11-18 10:55:08 | 显示全部楼层
cs524712 发表于 2021-11-18 10:43
我终于想明白了

经过前面几个大哥的解释 我感觉还是模模糊糊的

对,当成俄罗斯套娃就行
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-18 16:34:04 | 显示全部楼层
jackz007 发表于 2021-11-18 08:52
忽视多层方括号,只留下最后那一层,把他们视为普通变量,然后,对普通变量切片。

谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-11-18 16:34:40 | 显示全部楼层
做最好的自己520 发表于 2021-11-18 09:51
我理解是这样的:调出,list[1]下标内的第n个列表 , 就是嵌套吧     , 例如: list1 = [1,[3,4[' ...

谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-12 18:40

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表