列表的增删改查讲完之后,我们接着来看列表的切片。
切片就很简单了,和字符串一样,也是顾头不顾尾。
我还是把上章的列表拿来用。拿前面两个元素,就要选择0号索引和2号索引,因为顾头不顾尾吗。
name = ['美杜莎', '古薰儿', '云韵', '雅妃']
print(name[0:2])
前面我们讲字符串切片的时候可以指定步长和反向步长,同样列表切片也可以指定步长和反向步长。
name = ['美杜莎', '古薰儿', '云韵', '雅妃']
print(name[::2])
切片我们还要注意一点,不是剪切,不会改变原来的内容,二十拷贝一份,而且这个拷贝是浅拷贝。前面讲深浅拷贝的时候后也说过,默认情况下所有的拷贝都是浅拷贝, 除非用了那个copy模块下的deepcopy,那才是深拷贝。
然后下一个len统计长度,和前面字符串的len用法一样。
name = ['美杜莎', '古薰儿', '云韵', '雅妃']
print(len(name))
接着看成员运算,就是in和not in了,也很简单。就是判断一个元素是否存在于列表里面,和字符串成员运算没什么不同。
name = ['美杜莎', '古薰儿', '云韵', '雅妃']
print('云韵' in name)
然后是循环,列表可以用来做for循环,这个讲for循环的时候就讲过了,也就不再多讲了。
name = ['美杜莎', '古薰儿', '云韵', '雅妃']
for i in name:
print(i)
但是要注意一点,就是你用for循环遍历列表的时候,你不能一边遍历列表,然后一边又在for循环的子代码块里面,修改这个列表。我说的这个修改包括删除和增加。
name = ['美杜莎', '古薰儿', '云韵', '雅妃']
for i in name:
name.pop(0)
print(name)
本来循环4次的,现在只能循环2次了。当然不止是列表,所有能进行for循环的类型,都不要这么去做。
然后我们再来看下个功能count,这个功能是统计列表里一个元素出现的次数。
我把刚才的列表里增加三个美杜莎,然后统计美杜莎的个数。
name = ['美杜莎', '古薰儿', '云韵', '雅妃', '美杜莎', '美杜莎', '美杜莎']
print(name.count('美杜莎'))
继续看下个功能,index。这个功能是查看列表里一个元素的索引。比如我要查看美杜莎的索引,还是上面那个列表。
name = ['美杜莎', '古薰儿', '云韵', '雅妃', '美杜莎', '美杜莎', '美杜莎']
print(name.index('美杜莎'))
这个index功能是从左往右找的,找到第一个就不会继续往后找了,所以列表里后面出现同样的元素,也不会显示索引。如果你找的元素不存在列表中,就会直接报错,你可以自己试一下。
未经允许不得转载:445IT之家 » Python 列表详解4