首页 > 代码库 > 数据类型2
数据类型2
1.3 列表
作用:可以存多个值,例如爱好、课程、多个朋友等。
定义:[]内可以有多个任意类型的值,例如:数字、字符串、列表、字典、元组等。
常用操作:
索引
切片
追加
删除
长度
包含
1.3.1 索引
索引,即为下标,与字符串类似;可以通过下标进行访问列表的值,从左往右,按照顺序进行访问,例如:
my_friends=[‘jack‘,‘tom‘,‘frank‘,4,10,30] print(my_friends[1])
1.3.2 切片
从列表中切出子列表,例如:
my_friends=[‘jack‘,‘tom‘,‘frank‘,4,10,30] print(my_friends[1:5])
运行结果:
[‘tom‘, ‘frank‘, 4, 10]
1.3.3 追加
利用列表的方法append,向列表尾部添加元素,例如:
my_friends=[‘jack‘,‘tom‘,‘frank‘,4,10,30] my_friends.append(‘mary‘) print(my_friends)
运行结果:
[‘jack‘, ‘tom‘, ‘frank‘, 4, 10, 30, ‘mary‘]
1.3.4 删除
列表的删除有pop、remove,具体用法,用例子进行说明,例如:
my_friends=[‘jack‘,‘tom‘,‘frank‘,4,10,30,‘mary‘] # pop按照索引进行删除 my_friends.pop() # 从列表尾部删除 my_friends.pop(0) # 从列表头部删除 my_friends.pop(2) # 从指定位置删除 print(my_friends) # 运行结果:[‘tom‘, ‘frank‘, 10, 30] my_friends=[‘jack‘,‘tom‘,‘frank‘,4,10,30,‘mary‘] #remove按照值进行删除 my_friends.remove(‘frank‘) # 删除值为frank print(my_friends) # 运行结果:[‘jack‘, ‘tom‘, 4, 10, 30, ‘mary‘]
1.3.5 长度
计算列表长度,利用列表的内置方法__len__()进行计算,python也提供了len()方法计算列表长度,例如:
my_friends=[‘jack‘,‘tom‘,‘frank‘,4,10,30,‘mary‘] print(my_friends.__len__()) # 内置方法__len__() 结果:7 print(len(my_friends)) # 利用方法len() 结果:7
1.3.6 成员运算,包含(in)
成员运算,主要利用in判断成员是否在列表存在,例如:
my_friends=[‘jack‘,‘tom‘,‘frank‘,4,10,30,‘mary‘] print(‘mary‘ in my_friends) # 运行结果:True
1.3.7 插入
插入元素,利用insert
my_friends=[‘jack‘,‘tom‘,‘frank‘,4,10,30,‘mary‘] my_friends.insert(0,‘abc‘) # 从开始位置插入 my_friends.insert(2,‘cat‘) # 指定位置插入 print(my_friends)
1.3.8 其他操作
my_friends=[‘jack‘,‘tom‘,‘frank‘,4,10,30,‘mary‘] # my_friends.clear() # 清空列表的值 new_list=my_friends.copy() # copy一个列表 my_friends.count(‘jack‘) # 统计元素在列表中的次数 my_friends.extend([‘jack1‘,‘jack2‘,‘jack3‘]) # 一次添加多个元素 my_friends.index(‘tom‘) # 查看元素在列表中的下标 my_friends.reverse() # 列表翻转
1.3.9 模拟队列
#队列:先进先出 fifo=[] # 入队 fifo.append(‘first‘) fifo.append(‘second‘) fifo.append(‘third‘) # 出队 fifo.pop(0) fifo.pop(0) fifo.pop(0) # 入队 fifo.insert(0,‘first‘) fifo.insert(0,‘second‘) fifo.insert(0,‘third‘) # 出队 fifo.pop() fifo.pop() fifo.pop()
1.3.10 模拟堆栈
#堆栈:先进后出 filo=[] # 入栈 filo.append(‘first‘) filo.append(‘second‘) filo.append(‘third‘) print(filo) # 出栈 filo.pop() filo.pop() filo.pop() # 入栈 filo.insert(0,‘first‘) filo.insert(0,‘second‘) filo.insert(0,‘third‘) # 出栈 filo.pop(0) filo.pop(0) filo.pop(0)
1.5 字典
作用:存多个值,用key-value进行存取,取值方便,速度快
特点:字典的key必须是不可变类型,也成为可hash类型
常用操作:
存/取
删除
键值
长度
循环
包含in
1.5.1 定义
字典的key必须是不可变类型(数字、字符串、元组),值可以是任意类型
定义的方式:
info={‘name‘:jack,‘age‘:18,‘sex‘:‘male‘} #本质info=dict({‘name‘:jack,‘age‘:18,‘sex‘:‘male‘})
1.5.2 存/取
# 字典的取值,赋值 info={‘name‘:‘jack‘,‘age‘:18,‘sex‘:‘male‘} print(info[‘age‘]) # 取值 info[‘height‘]=1.80 # 存值
1.5.3 删除
通过字典的pop方法,进行删除;pop方法有两个参数,通过指定key进行删除子点的元素
info={‘name‘:‘jack‘,‘age‘:18,‘sex‘:‘male‘} print(info.pop(‘name‘)) # print(info) print(info.pop(‘tom‘,None))
1.5.4 获取
利用get获取字典的值,如果key不存在,返回None,不报错;例如:
info={‘name‘:‘jack‘,‘age‘:18,‘sex‘:‘male‘} print(info[‘name‘]) # key不存在,报错 print(info.get(‘name‘)) # key不存在,返回None print(info.get(‘addr‘,‘not key‘)) # key不存在,返回not key
1.5.5 其他方法
info={‘name‘:‘jack‘,‘age‘:18,‘sex‘:‘male‘} print(info.popitem()) # 随机删除一个元素 print(info.keys()) # 获取字典所有的key print(info.values()) # 获取字典所有的value # 循环字典 for key in info: print(key) for key in info: print(key,info[key]) # 字典的items()方法 for key,val in info.items(): # key,val == (‘name‘,‘jack‘) print(key,val)
1.5.6 fromkeys
利用fromkeys方法,进行初始化字典
dic=dict.fromkeys([‘name‘,‘age‘,‘sex‘],None) print(dic) print(dict([(‘name‘, ‘jack‘), (‘age‘, 18), (‘sex‘, ‘male‘)]))
1.5.7 update
update用新的字典更新原来字典,如果原来字典没有,直接把新字典添加原来字典
info={‘name‘:‘jack‘,‘age‘:18,‘sex‘:‘male‘} dic={‘a‘:1,‘b‘:2,‘name‘:‘mary‘,‘sex‘:‘female‘} info.update(dic) print(info)
数据类型2
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。