列表由一系列按特定顺序排列的元素组成。你可以创建包含字母表中所有字母、数字0~9或所有家庭成员姓名的列表;也可以将任何东西加入列表中,其中的元素之间可以没有
任何关系。鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters 、digits 或names )是个不错的主意。
在Python中,用方括号([])来表示列表,并用逗号来分隔其中的元素。下面是一个简单的列表示例,这个列表包含几个人名:
stus = [ "小白","小黑","小明"] #list 列表 数组 print(stus) >>[‘小白‘, ‘小黑‘, ‘小明‘]
在Python中,第一个列表元素的索引为0,而不是1。索引有可叫下标、角标。
stus = [ "小白","小黑","小明"] print(‘取第一个值:‘,stus[0])
>>取第一个值: 小白
创建一个空列表有以下两种方法:
stus2 = [] #空的列表 stus3 = list()#空的列表 print(‘这是一个空列表:‘,stus2) print(‘这也是一个空列表:‘,stus3)
>>这是一个空列表: []
>>这也是一个空列表: []
往列表中添加元素:
stus.append(‘小红‘) #在list的末尾增加一个元素 stus.insert(9,‘小紫‘)#在指定的位置插入元素 print(stus)# 如果指定的下标不存在,那么会把元素插入到最后 >>[‘小白‘, ‘小黑‘, ‘小明‘, ‘小红‘, ‘小紫‘]
获取列表中取元素:
print(‘第一个元素:‘,stus[0]) print(‘最后一个元素:‘,stus[-1])>>第一个元素: 小白 >>最后一个元素: 小紫
更改列表中的元素:
print(‘更改之前的数据:‘,stus) stus[4] = ‘小黄‘ print(‘更改之后的数据:‘,stus) >>更改之前的数据: [‘小白‘, ‘小黑‘, ‘小明‘, ‘小红‘, ‘小紫‘] >>更改之后的数据: [‘小白‘, ‘小黑‘, ‘小明‘, ‘小红‘, ‘小黄‘]
删除列表中的元素:
print(‘删完之前的数据:‘,stus) stus.pop() #默认删除list里面最后一个元素 print(‘删完之后的数据:‘,stus) >>删完之前的数据: [‘小白‘, ‘小黑‘, ‘小明‘, ‘小红‘, ‘小黄‘] >>删完之后的数据: [‘小白‘, ‘小黑‘, ‘小明‘, ‘小红‘] stus.pop(0) #删除指定位置的元素 print(‘删完指定下标之后的数据:‘,stus) >>删完指定下标之后的数据: [‘小黑‘, ‘小明‘, ‘小红‘]
print(‘删完之前的数据:‘,stus) del stus[0] #删除指定位置的元素 print(‘删完之后的数据:‘,stus) >>删完之前的数据: [‘小白‘, ‘小黑‘, ‘小明‘, ‘小红‘, ‘小黄‘] >>删完之后的数据: [‘小黑‘, ‘小明‘, ‘小红‘, ‘小黄‘]
print(‘删完之前的数据:‘,stus) stus.remove("小明")#删除指定的元素,如果list里面有多个一样的元素,那么就只会删掉一个。如果该元素不存在则会报:ValueError: list.remove(x): x not in list print(‘删完之后的数据:‘,stus) >>删完之前的数据: [‘小白‘, ‘小黑‘, ‘小明‘, ‘小红‘, ‘小黄‘] >>删完之后的数据: [‘小白‘, ‘小黑‘, ‘小红‘, ‘小黄‘]
其它常用方法:
count()可用来计算某个元素在list中的数量
clear()可清空整个list
copy()可复制一个list
reverse()可反转当前list顺序
stus = [ "小白","小黑","小明","小黑","小黑","小黑"] count = stus.count(‘小黑‘)#某个元素在list里面的数量 print(count) >>4
stus = [ "小白","小黑","小明","小黑","小黑","小黑"] stus.clear() #清空list print(stus) >>[]
stus = [ "小白","小黑","小明","小黑","小黑","小黑"] new_stus = stus.copy()#复制一个 print(new_stus) >>[‘小白‘, ‘小黑‘, ‘小明‘, ‘小黑‘, ‘小黑‘, ‘小黑‘]
stus = [ "小白","小黑","小明","小黑","小黑","小黑"] stus.reverse()#反转 print(stus) >>[‘小黑‘, ‘小黑‘, ‘小黑‘, ‘小明‘, ‘小黑‘, ‘小白‘]
nums = [9,23,12,234,23,5235,235,235,23523,523] nums.sort()#列表正序排列 print(nums) >>[9, 12, 23, 23, 234, 235, 235, 523, 5235, 23523]
nums = [9,23,12,234,23,5235,235,235,23523,523] nums.sort(reverse=True) #列表倒序排列 print(nums) >>[23523, 5235, 523, 235, 235, 234, 23, 23, 12, 9]
stus = [ "小白","小黑","小明","小黑","小黑","小黑"] nums = [9,23,12,234,23,5235,235,235,23523,523] print(‘加入前:‘,stus) stus.extend(nums) #把一个list的元素,加入到另外一个list里面;不传参,则不返回数据 print(‘加入后:‘,stus) >>加入前: [‘小白‘, ‘小黑‘, ‘小明‘, ‘小黑‘, ‘小黑‘, ‘小黑‘] >>加入后: [‘小白‘, ‘小黑‘, ‘小明‘, ‘小黑‘, ‘小黑‘, ‘小黑‘, 9, 23, 12, 234, 23, 5235, 235, 235, 23523, 523]
result = stus.index(‘小明‘)#找某个元素的下标;元素不存在则不返回数据;有多个重复元素时,返回第一个元素的下标 print(‘小明的下标:‘,result) >>小明的下标: 2
在Python中,字典 是一系列键—值对 。每个键 都与一个值相关联,你可以使用键来访问与之相关联的值。与键相关联的值可以是数字、字符串、列表乃至字典。事实上,可将任何Python对象用作字典中的值。
在Python中,字典用放在花括号{} 中的一系列键—值对表示,如下面的示例所示:
stu_info = { ‘username‘:‘小白‘, ‘phone‘:‘18888238281‘, ‘money‘:20, ‘addr‘:‘北京‘ } print(stu_info) >>{‘username‘: ‘小白‘, ‘phone‘: ‘18888238281‘, ‘money‘: 20, ‘addr‘: ‘北京‘}
创建一个空字典有以下两种方法:
d1 = {}#创建一个空字典 d2 = dict()#创建一个空字典 print(d1) print(d2) >>{} >>{}
往字典中添加元素:
d1[‘name‘] = ‘小黑‘ d1[‘age‘] = 18 d1.setdefault(‘class‘,‘画江湖‘)#前面写key,后面是value print(‘之前的‘,d1) d1.setdefault(‘age‘,38)#key已存在时,使用setdefault,不会修改原来的key值 print(‘之后的‘,d1) >>之前的 {‘name‘: ‘小黑‘, ‘age‘: 18, ‘class‘: ‘画江湖‘} >>之后的 {‘name‘: ‘小黑‘, ‘age‘: 18, ‘class‘: ‘画江湖‘}
修改字典中的元素:
print(‘修改之前的:‘,d1) d1[‘name‘] = ‘小黑2‘#key已存在时,会修改原来的key值 print(‘修改之后的:‘,d1) >>修改之前的: {‘name‘: ‘小黑‘, ‘age‘: 18, ‘class‘: ‘画江湖‘} >>修改之后的: {‘name‘: ‘小黑2‘, ‘age‘: 18, ‘class‘: ‘画江湖‘}
获取字典中的元素:
print(d1[‘name‘]) print(d1.get(‘name‘)) #使用上述两种方法,取一个不存在的key #print(d1[‘name2‘])#会报错KeyError: ‘name2‘ #print(d1.get(‘name2‘))#返回None print(d1.get(‘name2‘),‘没有这个值‘)#如果该key不存在,可以指定返回结果 print(d1.keys())#获取字典里面所有的key print(d1.values())#获取字典里面所有的value >>小黑2 >>小黑2 >>None 没有这个值 >>dict_keys([‘name‘, ‘age‘, ‘class‘]) >>dict_values([‘小黑2‘, 18, ‘画江湖‘])
删除字典中的元素:
使用pop()指定要删除的key
print(‘删除之前:‘,d1) d1.pop(‘name‘) print(‘删除之后:‘,d1) >>删除之前: {‘name‘: ‘小黑2‘, ‘age‘: 18, ‘class‘: ‘画江湖‘} >>删除之后: {‘age‘: 18, ‘class‘: ‘画江湖‘}
使用del指定要删除的key
print(‘删除之前:‘,d1) del d1[‘age‘] print(‘删除之后:‘,d1) >>删除之前: {‘name‘: ‘小黑2‘, ‘age‘: 18, ‘class‘: ‘画江湖‘} >>删除之后: {‘name‘: ‘小黑2‘, ‘class‘: ‘画江湖‘}
使用popitem()随机删除一个key
print(‘删除之前:‘,d1) d1.popitem()#随机删除一个key print(‘删除之后:‘,d1) >>删除之前: {‘name‘: ‘小黑2‘, ‘age‘: 18, ‘class‘: ‘画江湖‘} >>删除之后: {‘name‘: ‘小黑2‘, ‘age‘: 18}
使用clear()清空字典中所有的元素
print(‘清空之前:‘,d1) d1.clear()#清空 print(‘清空之后:‘,d1) >>清空之前: {‘name‘: ‘小黑2‘, ‘age‘: 18, ‘class‘: ‘画江湖‘} >>清空之后: {}
使用update把一个字典添加到另一个字典中去
d2 = {‘abc‘:‘1234‘} print(‘添加之前:‘,d1) d1.update(d2)#把d2的字典加到d1的字典中去 print(‘添加之后:‘,d1) >>添加之前: {‘name‘: ‘小黑2‘, ‘age‘: 18, ‘class‘: ‘画江湖‘} >>添加之后: {‘name‘: ‘小黑2‘, ‘age‘: 18, ‘class‘: ‘画江湖‘, ‘abc‘: ‘1234‘}
原文:https://www.cnblogs.com/huohuli/p/10672230.html