python基础--数据类型的常用方法2
列表及内置方法:
count():查询元素的个数
clear():清空当前对象
reverse():对当前对象进行反转
sort():对当前对象中的元素进行排序
总结:
能存多个值
有序的
可变的
队列: 先进先出
l1 = [] # 先进 l1.append('first') l1.append('second') l1.append('third') # 先出 print(l1.pop(0)) print(l1.pop(0)) print(l1.pop(0))
堆栈: 先进后出
# 先进 l1.append('first') l1.append('second') l1.append('third') # 后出 print(l1.pop()) print(l1.pop()) print(l1.pop())
元组及内置方法:
作用:能够存储多个元素,元素与元素之间用逗号隔开 元素可以是任意类型的,元组是不能被修改的。
定义: 与列表相比只是将[]变成了()
优先掌握:
1、索引取值
t = (1, 2, 3, 'a', 'b', [1, 2, 3]) print(t[0]) t[1] = 'hahah' t[-1] = 'hahaha' t[-1][0] = '我改了' print(t) del t[0] print(t)
2、切片(顾头不顾尾,步长)
print(t[::2])
3、长度(len())
4、成员运算符:in和not in
5、循环
总结:
能存多个值
有序
不可变
字典及内置方法:
强调:字典的key是不能重复的,要唯一标识一条数据 如果重复了只会按照最后一组重复的键值对存储
作用:能存储多组key:value键值对 key是对value的大概描述,key通常情况下都是字符串
定义:d = {'name':'jason','password':123} --> d = dict( {'name':'jason','password':123})
优先掌握的操作:
1、按照key存取值 可存可取
d3 = {'name':'william','password':'123'} d3['age'] = 18 # 赋值语句当key不存在的情况下,会自动新增一个键值对(******) print(d3['name'])
2、长度(len())
3、成员运算符:in和not in
4、删除
d3 = {'name':'jason','password':'123'} del d3['name'] # 直接删除指定的元素 print(d3) res = d3.pop('name') # 弹出仅仅是value res = d3.pop('age') # 当键不存在的时候直接报错 print(res) print(d3) d3.clear() # 清空当前字典 print(d3)
要掌握的:
5、定义字典的三中方式
# d1 = {'name':'jason','password':123} # 掌握 d2 = dict(name='wiliam',password=123,age=18) # (******) print(d2,type(d2)) # 了解即可 l = [ ['name','william'], ['age',18], ['hobby','read'] ] d = {} for i in l: # ['name','jason'],['age',18]... for k,v in l: # ['name','jason'],['age',18]... d[i[0]] = i[1] d[k] = v print(d) d3 = dict(l) print(d3)
5、键keys(),值values(),键值对items()
d1 = {'name':'jason','password':123} print(d1.keys()) # dict_keys(['name', 'password']) 老母猪 for k in d1.keys(): print(k) print(d1.values()) # dict_values(['jason', 123]) 老母猪 现在就把它当成一个列表来看即可 print(d1.items()) # dict_items([('name', 'jason'), ('password', 123)]) # 就把它看成是列表套元组,元组的第一个元素是字典的key 第二个元素是字典的value # get()根据key获取value(*******************************) d1 = {'name':'jason','pwd':123} print(d1['name']) print(d1['age']) print(d1.get('name','你给我的name在字典的key中')) res = d1.get('age') # 当字典的key不存在的情况 不报错 返回None res1 = d1.get('xxx','你给我的age在字典的key中') # 当字典的key不存在的情况 不报错 返回None # # get可以传第二个参数。当你的key不存在的情况下,返回第二个你写好的参数信息 print(res1) print(d1.get('xxx','asdsad')) # 第二个参数不写的话 当key不存在的情况下返回None,写了就返回写了内容 # dict.fromkeys() 快速的创建一个字典 l1 = ['name','password','age','hobby'] print(dict.fromkeys(l1,123)) dict.popitem() print(d1.popitem()) # 尾部以元组的形式弹出键值对 # dict.setdefault() d1 = {'name':'jason','pwd':123} res1 = d1.setdefault('name','xxoo') # 当键存在的情况下 不修改值 并且将原先key对应值返回给你 print(d1,res1) res2 = d1.setdefault('age',18) # 当键不存在的情况下 新增一个键值对 并且将新增的键值对的值返回给你 print(d1,res2) dict.update() d1 = {'name':'jason','pwd':123} d2 = {"age":18} d1.update(d2) d1['age'] = 18 d1.update(age=666) print(d1)
6、循环
总结:村多个值
有序
可变
集合及内置方法:关系运算,去重
定义:s = {1,2,3,4,5,6} # <class 'set'> # s = set() 集合可以包含多个元素,用逗号分割
遵循的规则:
1、每个元素必须是不可变类型(可变:不可hash 不可变:可hash)
s = {1,2,3,4,5,6,'a',(1,2),[1,2]} # 报错 s = {1,2,3,4,5,6,'a',(1,2),{"name":'william'}} # 报错
2、没有重复的元素
s = {1,2,2,2,2,2,2,2,2,2,3,4,4,4,4,4,5} print(s) # 自动将重复的元素 去除
3、无序
s = {1, 2, 3, 4, 5, 6} print(s[1]) # 注意集合的目的是将不同的值存放到一起,不同的集合间用来做关系运算,无需纠结于集合中单个值
优先掌握的:
1、长度(len())
2、成员运算符:not in和in
3、| 合集
4、& 交集
5、- 差集
6、 ^ 对称差集
7、==
8、父集:>,>=
9、子集:<,<=
可变类型:字典、列表、集合
不可变类型:整型、布尔值、字符串、元组、浮点数