python基础04-列表操作

发布日期:2019-11-15 12:55 本文摘要:上篇《python基础03-字符串操作》我们学习了python的字符串类型,了解了字符串常见操作和它的不变性,今天我们接着学习新的数据类型-列表,列表也是序列式的数据类型,跟字符串一样,支持下标和切片操作,但列表跟字符串不同的是它是可变类型,这个数据类型

  上篇《python基础03-字符串操作》我们学习了python的字符串类型,了解了字符串常见操作和它的不变性,今天我们接着学习新的数据类型-列表,列表也是序列式的数据类型,跟字符串一样,支持下标和切片操作,但列表跟字符串不同的是它是可变类型,这个数据类型在后续我们编程中用的非常的多,比如将读出的IP放到列表中,然后读取执行,这些后续我们写实际脚本时再说,我们先从最基础的,如何创建列表开始:1、创建列表方式,一种是用[],一种是用list()函数,这二种方法都可以创建一个列表,如下:

  

>>> lis = [] >>> lis [] >>> lis = [1,2,3,'a','c'] >>> lis [1, 2, 3, 'a', 'c'] >>> st = 'abcdef' >>> stlis = list(st) >>> stlis ['a', 'b', 'c', 'd', 'e', 'f']

 

  如果[]里什么都没有,就创建了一个空列表,在列表里的内容称为列表元素,元素类型可以使python支持的标准类型。2、列表的元素数据访问,刚开始我们也说了,列表是序列类型,所以它支持切片和下标的访问,例子如下:

  

>>> lis = [] >>> lis [] >>> lis = [1,2,3,'a','c'] >>> lis [1, 2, 3, 'a', 'c'] >>> st = 'abcdef' >>> stlis = list(st) >>> stlis ['a', 'b', 'c', 'd', 'e', 'f']

 

  因为这个跟字符串操作非常类似,所以我们不在多说。3、列表操作函数关于列表的操作有很多的方便可用的函数,这里我们跟字符串一样,也挑一些比较常用的来举例说明下,其它函数如果后续用到我们再说。append()函数: 作用是添加列表的元素在尾部,接收一个参数,然后将改元素加入列表的尾部,举例如下:

  

>>> lis.append('d')>>> lis[1, 2, 3, 'a', 'c', 'd']

 

  extend()函数:作用是扩展一个列表,这个函数类似把两个列表相加,例如:

  

>>> lis [1, 2, 3, 'a', 'c', 'd'] >>> others = ['e','f'] >>> lis.extend(others) >>> lis [1, 2, 3, 'a', 'c', 'd', 'e', 'f']

 

  remove() : 作用根据指定的值删除一个元素,当列表元素被删除后,位于它后面的元素自动迁移,然后列表长度减一,举例:

  

>>> lis [1, 2, 3, 'a', 'c', 'd', 'e', 'f'] >>> lis.remove(1) >>> lis [2, 3, 'a', 'c', 'd', 'e', 'f']

 

  pop():这个函数会返回指定下标位置的元素,如果不给指定下标,它默认使用-1,例如pop(0)返回列表的头元素,pop()返回列表的尾部元素,但这个函数在获取后就会自动将这个元素在列表中删除,例如:

  

>>> lis [2, 3, 'a', 'c', 'd', 'e', 'f'] >>> lis.pop() 'f' >>> lis [2, 3, 'a', 'c', 'd', 'e'] >>> lis.pop(0) 2 >>> lis [3, 'a', 'c', 'd', 'e']

 

  如果这个函数不带参数会比较有意思,因为它跟append()函数的作用相反,一个是从尾部加,一个是从尾部减,这个就是大学数据结构课程中的-栈,即后进先出,可以假设有个空列表,运行append()就是压栈的操作,pop()就是出栈的操作,那如果加入下标0,即pop(0),那这样列表就形成了一个队列,跟去公园买票排队一样,先进来的先出去,即先进先出,这也是一种队列方式,这两种方式在后续编程中非常有用,如果后续我们有用到,我们会详细说。count()函数用来统计列表中元素的重复个数,如果我们生成了一个列表,想要获取某元素在列表中出现的次数,可以用这个函数,例如:

  

 

  len()函数,跟字符串的len函数功能一样,返回列表的长度,这个比较简单就不多说了。

  

>>> len(lis) 6 >>> lis [3, 'a', 'c', 'd', 'e', 'e']

 

  基本函数我们就说讲这么多,后续有特殊的我们详细再谈,接下来我们说一下列表的一些关系操作4、列表关系操作,in, not in关系操作就是检查判断一个对象是不是一个列表的成员,如果存在返回True, 否则返回False, 一般常用与条件语句中,例如:

  

>>> lis [3, 'a', 'c', 'd', 'e', 'e'] >>> 'a' in lis True >>> 'g' in lis False >>> 'g' not in lis True 

 

  具体的条件语句我们后续会单独详细说,在这里就不展开了,这种关系操作后续编程中也非常有用。5、列表转字符串操作在日常处理列表中,有一个比较常见的操作就是要求将一个列表转成一个字符串,这里我们可以用join()函数实现,例如:

  

>>> lis ['a', 'c', 'd', 'e', 'e'] >>> >>> ''.join(lis) 'acdee'

 

  6、列表解析,这部分内容我们在讲循环的语句的时候会单独说,它在编程中也比较常用,这个功能可以让我们动态的生成列表。写到这我们也基本把列表也说完了,除了这些数据类型,理解python的赋值语句(等于号)也非常关键,在最后我给出一个例子,请大家一起理解下这些语句的意义,python基础04-列表操作如果有问题可以留言交流。

  

>>> a = 'x' >>> lis = [a, 2] >>> lis ['x', 2] >>> lis = [a,2,"abc",False] >>> lis ['x', 2, 'abc', False] >>> a 'x' >>> b = 'y' >>> lis ['x', 2, 'abc', False] >>> a = b >>> a 'y' >>> lis ['x', 2, 'abc', False] >>> lis = [a, 2] >>> lis ['y', 2]少儿编程培训学校