前情提要:
今天又是继续开心的拿着工具书学习如何当码农的小日子了!
不过打着打着,输出的结果怎么看起来和书上说得不太一样啊!?
这不看还好,一看不得了......这巢状迴圈还得要好好思考下对应的位置耶!
巢状串列有很多层,所以需要使用多个索引值来存取指定项目,也要使用两个索引值来存取指定项目
在课本的範例中是这样写的:
lst2 = [[2, 4], ['cat', 'dog', 'bat'], [1, 3, 5]]print(lst2[1][0]) #这是指串列lst2中,索引1中的索引0lst2[2][1] = 7 #这是指串列lst2中,索引2中的索引1 =7print(lst2)
结果我打着打着就给他变成了这样:
lst2 = [[2, 4], ['cat', 'dog', 'bat'], [1, 3, 5]]print(lst2[1],[0]) #这是指串列lst2中,索引1中的索引0lst2[2][1] = 7 #这是指串列lst2中,索引2中的索引1 =7print(lst2)
执行结果自然也就跟着错啦:
自己还很那闷那个[0]是做啥用的......
如果照课本上程式去跑的话,得到结果应该只有cat才对!
因为之前在新手村砍木人的时候,基本没怎看过这种框框里面又有框框,里面的框框里面还有好几个参数的东西;再加上一时手残打错,造成输出奇怪的结果,所以就顺便笔记下来!
依照课本的範例中,这个框框里面又有框框,里面的框框里面还有好几个参数的东西,是对应着不同的"索引值"。
大概是下面这样:
虽然感觉上还是满複杂的,其实就是像在在超商自助取货的"第几个柜里面的第几号"吧!
lst2后面第一个框框就是"第几楼";第二个框框就是"第几号"。
这样似乎就比较容易了解了呢!