容器型数据类型——列表
文章目录
列表的相关操作
创建列表的方式
-
方法一:字面量语法
list = ['你好','好好学习','天天向上']
-
方法二:构造器语法
list = list(range(1,11))#构造1~10的列表
-
方法三:生成式语法
list3 = [i**2 for i in range(1,11)]#生成1~10平方的列表
列表的遍历
-
第一种
for i in range(len(list1)): print(list[i])
-
第二种
for x in list1: #此方法不能修改,只能读取 print(x) #直接读取元素
-
第三种
for i,x in enumerate(list1): #i 为下标,x为元素 print(i,x) #既能取出元素又能取出对应的下标
列表的运算
-
重复运算
list4 = [1,10,100]*5 #每个元素出现5次
-
成员运算—>返回的是布尔值 True / False
print(100 in list4) #表示的是 100 在列表中 list4 print(5 not in list5) #表示的是 5 不在列表中 list4
列表的索引与切片
-
正向索引: 0~N-1 / 负向索引: -N~ -1
print(list3[:]) #取全部元素 print(list3[1:9]) #取下标1~8的元素 print(list3[::-1]) #列表反转
合并运算
-
list5 = [1,3,5,7] list6 = [4,4,5] list5 += list6 # list5 = list5 + list6
-
函数
extend()
扩展合并list5.extend(list6) #同上是一样的
比较两个列表的元素是否相等
在实际运用中无太大作用 返回的是布尔值
list7 = list(range(1,8,2))
list8 = list(range(1,2,3))
print(list7==list8)
print(list7!=list8)
#比较两个列表对应元素的大小 从前往后只要满足比较 则输入真假 不再往后比较
print(list7>list8)#实际工作中没什么价值
print(list7<list8)
列表元素的删除与添加
元素的添加
append()
在末尾追加 insert(i,x)
在指定位置添加 i 表示位置 x 表示元素
items = ['banana','grape','apple','waxberry','pitaya','apple']
#添加元素
items.append('bulebery')
items.insert(1,'watermelon')
print(items)
删除元素
pop()
默认删除末尾元素 也可pop(i)
删除 i 位置上的元素
remove
(‘元素’) 删除括号里的元素 , 删除列表中出现的第一个要删除的元素
del
删除表
clear()
清空元素
items.pop()
items.pop(4)
print(items.pop(0))#拿到被删除的元素(返回值)
items.remove('apple')#删除列表中第一个apple
print('--'*20)
del items[0]#也是删除
print(items)
while 'apple' in items:#删除所有apple
items.remove('apple')
print(items)
#清空列表元素
items.clear()
print(items)
列表的其他函数
reverse()
进行列表的反转
items = ['banana','grape','apple','waxberry','pitaya','apple']
items = items[::-1]
print(items)
items.reverse() #反转
print(items)
- 排序
sort()
默认排升序
items.sort() #默认排升序
print(items)
items.sort(reverse=True) #排降序 大到小
print(items)
items.sort(reverse=False) #排升序 小到大
print(items)
`index()`查找需要查找的元素 返回的是元素的位置
-
index()
查找需要查找的元素 返回的是元素的位置items = ['banana','grape','apple','waxberry','pitaya','apple'] print(items.index('banana'))#在列表中查找banana并返回位置 print(items.index('banana',3))#在列表中从3的位置开始查找banana并返回位置 #index()查找元素在列表中的索引 下标 没有的话会报错
-
count()
统计元素在列表中出现的次数print(items.count('apple'))#统计元素在列表中出现的次数
字符串与数字的转换
sort()
函数默认排升序sort(reverse=False)
排升序sort(reverse=True)
排降序
nums = ['1','10','234','35','100']#双引号引起的字符串
nums.sort()
print(nums)
#方法一
nums = ['1','10','234','35','100']
nums2 = [int(num) for num in nums] #字符转整数
nums.sort()
print(nums)
nums3 = [str(num) for num in nums2] #数字转字符
#方法二 最好用
nums.sort(key=int) #key 的含义我们以后再讲
print(nums)