xqhan312 发表于 2019-5-3 12:06:25

#每日一问#关于在多重列表的操作

在书中P34,对列表中的列表元素的操作:
>>> list1 = ["小猪", "小猫", ["小甲鱼", "小护士"], "小狗"]
>>> "小甲鱼" in list1
False
>>> "小甲鱼" in list1
False
>>> "小甲鱼" in list1
True
>>> "小猪" in list1
False
>>> "小猪" in list1
True
>>> list1
'猫'
>>> list1
'猪'
>>> list1
'小护士'
>>> list1
'小'

本例中有2重列表,最外围的列表是0,还是1?
根据:
>>> "小甲鱼" in list1
True
可知,"小甲鱼"是在第2重列表中,并且定义为列表2。由此可推断第一重列表,即本例中最外围列表应定义为列表1。

可是,根据:
>>> "小猪" in list1
False
可知, "小猪"没有在第1重列表中。

然后,根据:
>>> "小猪" in list1
True
可知, "小猪"在第0重列表中。

且,根据:
>>> list1
'猫'
以及:
>>> list1
'小护士'

我是彻底迷茫了,多重列表,到底如何判断?最外围是0,还是1?第二重到底是1,还是2,或是多少?

ba21 发表于 2019-5-3 13:10:08

list1 = ["小猪", "小猫", ["小甲鱼", "小护士"], "小狗"]
list1 ==["小甲鱼", "小护士"]
list1== "小甲鱼"
list1 == "小护士"

xqhan312 发表于 2019-5-3 13:20:28

谢谢回复,请问,第一重列表如何表示,是list1还是list1?

ba21 发表于 2019-5-3 13:42:30

xqhan312 发表于 2019-5-3 13:20
谢谢回复,请问,第一重列表如何表示,是list1还是list1?

别第一重列表第二重列表的,列表里面都是值;这个值可以是字符串,可以是数字,也可以是列表,也可以是其它的。
把值取出来,然后你要对它怎么操作是你的事。是字符串当然有字符串的相关操作方法;如果这个值是列表,那么当然也有针对列表的操作方法。

同样
list1 = ["小猪", "小猫", ["小甲鱼", "小护士"], "小狗"]
list1 == "小猪"
list1 == "小"
list1 =="猪"

xqhan312 发表于 2019-5-4 10:34:41

ba21 发表于 2019-5-3 13:42
别第一重列表第二重列表的,列表里面都是值;这个值可以是字符串,可以是数字,也可以是列表,也可以是其 ...

嗯嗯,好的,我再好好理解一下,谢谢回复!
页: [1]
查看完整版本: #每日一问#关于在多重列表的操作