在python中,列表是最基本的数据结构,常用的数据类型。列表可以容纳python中的任何对象,创建列表时,只要把逗号分隔的不同的数据项用方括号括起来即可。
注意:变量命名第一个不能是数字
1.查询列表中的值
通过索引和切片的方法
#创建列表 a = [2,'hello',3.4,True,'world'] #正数索引,0开始 print(a[1]) #负数索引,右到左,-1开始 print(a[-3]) #切片 print(a[1:4]) #from:to前闭后开 print(a[1:]) print(a[1:-2]) #可以正负号混合使用 print(a[::2]) #from:to:step print(a[::-1]) #前后颠倒
输出结果:
2.增加列表元素
可以使用append( )增加列表项,+号组合列表,*号重复列表
#增删改 a = ['apple'] #追加元素到列表 a.append(['pear']) print(a) #效果等同:+['pear'] a.extend(['pear']) print(a) #在指定位置插入元素 a.insert(1,'peach') print(a)
输出结果:
a = ['apple'] print(['pear'] + a) #列表之间的拼接可以使用加号 print(a*3)
输出结果:
3.删除列表元素
remove()和del语句均可实现对列表的删除,但remove()只删除掉第一次出现的值
#列表删除 a = list('abcd') a.remove('d') #只会移除掉第一次出现的值(仅一次) b = [5,2,6,8,3] del b[1] #delect print(a) print(b)
输出结果:
4.列表修改
通过索引进行列表元素的修改
a = list('abcdefg') a[1] = 'B' print(a) #将小写e改为大写 a[4] = 'E' print(a)
输出结果:
5.列表推导式
#for循环 a = [1,2,4] b = [] for i in a: b.append(i*2) print(b) #列表推导式 c = [i*2 for i in a]#列表推导式 c
输出结果:
6.列表元素个数、最大值、最小值、排序
a = [4,5,12,6,13,24,31,23,42,10] #列表个数 n = len(a) #列表最大值 Mx = max(a) #列表最小值 Mn = min(a) print(n,Mx,Mn)
输出结果:
10 42 4
排序可用函数.sort
#排序(直接用函数data.sort) data = [28,30,10,17,3,25,12,35,8,49,46] data.sort() data
输出结果:
冒泡排序法
冒泡排序也是一种简单直观的排序算法。
它重复地走访过要排序的数列,比较相邻的元素。如果第一个比第二个大,就交换他们两个。对每一对相邻元素作同样的工作,从开始第一对到结尾的最后一对。这步做完后,最后的元素会是最大的数。针对所有的元素重复以上的步骤,除了最后一个。
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。
#冒泡排序法 data = [28,45,15,23,56,14,25,13,78,41] #1.比较两两之间的大小 #2.如果起一个数据比后一个大,将大的放到后面 for j in range(len(data)-1): for i in range(len(data)-1-j): #len(data)-1 if data[i] > data[i+1]: data[i],data[i+1] = data[i+1],data[i] data
输出结果:
[13,14,15,23,25,28,41,45,56,78