数据内置方法补充
内容概要
- 列表内置方法补充
- 字典内置方法
- 元组内置方法
- 集合内置方法
- 字符编码
列表其他方法
-
升序和降序
![image]()
-
切片
s = [9, 4, 6, 2, 7]
print(s[1:3])
print(s[::-1]) # 冒号两边不写默认全都要
print(s[:4]) # 右边不写默认从头开始
print(s[1:]) # 左边不写默认到末尾
![image]()
-
比较运算
s = [222, 333]
s1 = [111, 222, 333]
print(s > s1)
![image]()
s = 'go'
s1 = 'sss hhh'
print(s > s1)
![image]()
字典内置方法
-
索引取值
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
print(dict['age']) # 按k取值
print(dict['ppp']) # k不存在直接报错
![image]()
-
修改和添加
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
dict['age'] = 'about' # k键存在为修改值
dict['ppp'] = 666 # k键不存在为添加键值对
print(dict)
![image]()
-
统计字典内部键值对的个数
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
print(len(dict))
![image]()
-
成员运算
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
print('user' in dict)
print('age' in dict)
![image]()
-
删除元素
方式一
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
del dict['age']
print(dict)
![image]()
方式二
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
dict.pop('hobby')
print(dict)
![image]()
方式三
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
print(dict.popitem())
print(dict)
![image]()
-
获取v值
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
print(dict.get('name'))
print(dict.get('ppp')) # k键不存才不会报错返回none
print(dict.get('hobby', 123)) # 第二个参数可以在k不存在的时候自定义返回信息
print(dict.get('www', 333)) # 第二个参数可以在k不存在的时候自定义返回信息
![image]()
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
print(dict.keys()) # 获取字典所有的键 当成列表即可
print(dict.values()) # 获取字典所有的值 当成列表即可
print(dict.items()) # 获取字典所有的键值对 组织成列表套元素
"""keys() values() items() 在python2中是列表 在python3中是迭代器"""
![image]()
dict = {'name': 'user', 'age': 18, 'hobby': 'music'}
print(dict.setdefault('age', 18))
print(dict.setdefault('ppp', 999))
print(dict)
![image]()
元组内置方法
-
类型转换
能够支持for循环的数据都可以转换成元组
print(tuple('123'))
print(tuple([11, 22, 33]))
print(tuple({'name': 'user', 'age': 18}))
![image]()
-
索引取值
s = (11, 22, 33, 44, 55)
print(s[3])
![image]()
-
切片
s = (11, 22, 33, 44, 55)
print(s[1:3])
![image]()
-
步长
s = (11, 22, 33, 44, 55)
print(s[1:4:2])
![image]()
-
统计元组内元素个数
s = (11, 22, 33, 44, 55)
print(len(s))
![image]()
-
for循环
s = (11, 22, 33, 44, 55)
for i in s:
print(i)
![image]()
-
count计数
s = (11, 22, 33, 44, 55)
print(s.count(33))
![image]()
-
笔试
s = (11, 22, 33, [44, 55])
s[3].append(666)
print(s)
![image]()
集合去重操作
-
定义空集合需要用到关键字set
s = set() -
类型转换 能够支持for循环的数据都可以转成集合(元素要是不可变类型)
集合内元素是无序的
s = [11, 22, 33, 44, 55]
print(type(set(s)))
s1 = {'name': 'user', 'age': 123, 'hobby': 'music'}
print(type(set(s1)))
![image]()
-
去重
s = {1, 1, 2, 2, 3, 3, 4, 1, 3, 2, 5}
print(s)
s1 = [11, 11, 33, 33, 22, 22]
s1 = set(s1)
print(s1)
![image]()
-
联系去重并保留原来顺序
j = [66, 33, 55, 77, 77, 99, 22, 11]
l = []
for i in j:
if i not in l:
l.append(i)
print(l)
![image]()
集合关系运算
-
关系运算
两个群体之间做差异比较 -
两个用户的共同好友
s1 = {'ss', 'dd', 'cc', 'ff', 'gg'}
s2 = {'ff', 'zz', 'xx', 'gg', 'nn'}
print(s1 & s2)
![image]()
-
两个用户所有的好友
s1 = {'ss', 'dd', 'cc', 'ff', 'gg'}
s2 = {'ff', 'zz', 'xx', 'gg', 'nn'}
print(s1 | s2)
![image]()
-
用户1和用户2的独有好友
s1 = {'ss', 'dd', 'cc', 'ff', 'gg'}
s2 = {'ff', 'zz', 'xx', 'gg', 'nn'}
print(s1 - s2)
print(s2 - s1)
![image]()
-
用户1和用户2各自好友
s1 = {'ss', 'dd', 'cc', 'ff', 'gg'}
s2 = {'ff', 'zz', 'xx', 'gg', 'nn'}
print(s1 ^ s2)
![image]()
-
父集与子集
l1 = {1, 2, 3}
l2 = {2, }
print(l1 > l2) # 判断l1是l2的父集
print(l2 < l1) # 判断l2是l1的子集
![image]()
































浙公网安备 33010602011771号