51Testing软件测试论坛

标题: python 中的列表 [打印本页]

作者: 测试积点老人    时间: 2018-12-10 14:25
标题: python 中的列表
列表是可变数据类型  可以改变元素的值,可以保存任何数据类型--数据项不需要具有相同的类型

创建 [ ]

  1. list1 =[1,2,3,4,5]
复制代码

访问数据项:索引和分片的方式,

  1. list1 = ['physics', 'chemistry', 1997, 2000]
  2. print list1[0]  #通过索引取第一位
  3. print list1[-1] #通过索引访问最后一位
  4. print list1[0:2]  #通过分片的方式访问
复制代码

更新数据项:通过索引和分片赋值的方式(不能超过索引范围)  可以同时改变一个范围内的数据项

list1[x:y] = list2    *list2替换后总长度可以和list1不相等   批量追加

  1. list1 = ['physics', 'chemistry', 1997, 2000]
  2. list2 = [2008,2018]
  3. list1[2]='chinese' #索引赋值
  4. list1[3:3]=list2   #分片赋值,在第四项插入列表list2
  5. print list1     #输出 ['physics', 'chemistry', 'chinese', 2008, 2018, 2000]
复制代码

清空列表:   list[:] = []

  1. list1 = ['physics', 'chemistry', 1997, 2000]
  2. list1[:]=[]
  3. print list1   #输出 []
复制代码

删除数据项    del list[index]      del list 不加索引直接删除引用,回收对象

  1. list1 = ['physics', 'chemistry', 1997, 2000]
  2. del list1[2]
  3. print list1   #输出 ['physics', 'chemistry', 2000]
复制代码

列表方法:

append  用于在列表末尾追加新的元素

count   用于统计某个元素在列表中出现的次数

extend  在列表末尾一次性追加另一个序列中的多个值

insert(index, obj)                将对象插入到列表指定项

index   用于从列表中找出某个值第一个匹配项的索引位置

pop     该方法从列表中弹出一个元素,默认是最后一个。并且返回弹出的元素

remove  从列表中移除某个值的第一个匹配项。与pop不同的是,该方法并不返回移除的元素

下面是举例说明:

  1. list1 = ['physics', 'chemistry', 1997, 2000,'shanghai','shanghai']
  2. list1.append(['beijing',100,2018])   #相当于在最后一位追加了一个列表
  3. print list1   #结果是:['physics', 'chemistry', 1997, 2000, 'shanghai', 'shanghai', ['beijing', 100, 2018]]
  4. list1.extend(['beijing',100,2018])   #列表的扩容,列表的一次性追加,相当于加了三个数值, 如图所示后面三个元素
  5. print list1.count('shanghai')  #统计字符串shanghai在列表中出现的次数,返回值是 2
  6. print list1 #输出:  'physics', 'chemistry', 1997, 2000, 'shanghai', 'shanghai',  'beijing', 100, 2018]
  7. list1.insert(0,'def')  #insert函数 给指定的位置插入数据,给第一位插入def,其他的自动往后排
  8. print list1.index('def')  #指定元素的索引位置,第一个字符串def出现的索引位置
  9. print list1.pop() #不填,不输入任何参数,默认弹出最后的那位 ,主要而且还弹回返回值
  10. list1.pop(2)  #pop是按照索引弹出指定的数据,主要是有返回值的
  11. list1.remove(3)  #移除数字3,
  12. list1.reverse()  #列表翻转,比较常用  [1,2,3,4]  可以翻转成 [4,3,2,1]
复制代码








欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2