tuple(元组)
注意:元组数据不允许修改
tu = (1, 2, 3) tu2 = (4,) # 只有一个元素时,要有逗号 print(tu) print(tu2)
count 和 index 跟列表中的用法相同
tu3 = ('a', 'b', 'c', 'a') print(tu3.index('b')) # 返回下标 print(tu3.count('a')) # 返回个数
dict(字典)
1 定义
dict_1 = { }
dic = {'name': 'skye', 'age': '18'} print(dic)
2 字典中 键具备唯一性,值可以重复
dic1 = {'name': 'zhang3', 'name': 'li4'} print(dic1) # {'name': 'li4'} dic2 = {'name': 'zhang3', 'name2': 'li4'} print(dic2) # {'name': 'zhang3', 'name2': 'li4'}
3 字典常见操作--增删改查
1 增加(添加)元素 -- 增加键值对
d = {'name': 'zs', 'id': '99'} d['del'] = 123456 print(d)
2 删除元素 -- del/clear
d = {'name': 'zs', 'id': '99'} del d['id'] # 删除指定值 print(d) # {'name': 'zs'} d.clear() # 清空数据 print(d) # {} del d # 删除字典 print(d) # NameError: name 'd' is not defined
3 修改元素 -- 值覆盖
d = {'name': 'zs', 'id': '99'} d['id'] = 18 print(d) # {'name': 'zs', 'id': 18}
4 查询元素 -- 根据键名访问值
dic3 = {'name': '喜洋洋', 'name3': '灰太狼'} print(dic3['name']) print(dic3['name2']) print(dic3.get('name2', '不存在')) # 如果没有那个键名,返回默认值('键名', '默认值')
4 字典其他操作
1 len() 求长度
dic3 = {'name': '喜洋洋', 'name3': '灰太狼'} print(len(dic3)) # 2
2 keys() 返回所有键名--以列表的方式
dic3 = {'name': '喜洋洋', 'name3': '灰太狼'} print(dic3.keys()) # dict_keys(['name', 'name3']) for i in dic3: # 逐一取出 print(i)
3 values() 返回所有值--以列表的方式
dic3 = {'name': '喜洋洋', 'name3': '灰太狼'} print(dic3.values()) # dict_values(['喜洋洋', '灰太狼']) for i in dic3.values(): # 逐一取出 print(i)
4 items() 返回所有键值对--以元组方式
dic3 = {'name': '喜洋洋', 'name3': '灰太狼'} print(dic3.items()) # dict_items([('name', '喜洋洋'), ('name3', '灰太狼')]) for i in dic3.items(): # 逐一取出 print(i)
set(集合)-- 无序性、唯一性 -- { }
1 定义
s = {'a', 'b', 'c', 1, 2, 3} print(s) print(type(s))
2 集合常见操作
1 添加元素--add/update
# 集合---add(整体)/update(拆分) s = {'a', 'b', 'c', 1, 2, 3} s.add('dfg') print(s) s.update('xvb') print(s)
2 删除元素--remove/pop/discard
# remove 有则删除,无则报错 # pop 先无序排列,后首元素删除 # discard 有则删除,无则不操作 s = {'a', 'b', 'c', 1, 2, 3} s.remove(1) print(s) # {'c', 2, 3, 'a', 'b'} s.pop() print(s) # {2, 3, 'a', 'b'} s.discard('a') print(s) # {2, 3, 'b'}
3 交集 & 和 并集 |
a = {1, 2, 3} b = {2, 3, 4} print(a & b) # {2, 3} # 无交集则显示 set() print(a | b) # {1, 2, 3, 4}
4 无序性
# 为什么整数不会无序排列? # 集合无序的实现方式是hash表 print(hash('a')) print(hash('b')) print(hash('c')) # 每次的hash值都不同,那么在hash表中的位置也不同,这样就实现了集合的无序性 print(hash(1)) print(hash(2)) print(hash(3)) # python中int整型的hash值就是它本身,所以顺序就不会变
以上是作者学习总结,分享所学,共同进步。如若哪处有误,感谢指出!