字典Dict
与list差别 list 内存占用少,查找慢
dict 内存占用多,查找快
# dict
# 键值对的存储方式,查找速度快
# 创建字典
dict1 = {"济南":"鲁A", "青岛":"鲁B", "泰安":"鲁J", "聊城":"鲁P", "日照":"鲁L"}
dict2 = {"枣庄":"鲁D", "淄博":"鲁C"}
print(dict1)
# 访问字典元素, dict["键名"]
print(dict1["济南"])
# 修改字典
dict1["青岛"] = "鲁BB"
print(dict1)
# 删除字典所有元素
# dict2.clear()
# print(dict2)
# 删除字典
# del dict2 # Error dict2 is not defined
# print(dict2)
# 注意事项
# 不允许一个键创建2次,创建2次,以最后一次为准
dict2["滨州"] = "鲁MM"
print("The First dict2------>",dict2)
dict2["滨州"] = "鲁M"
print("The Secend dict2 ---->",dict2)
# 由于键名单一不可变,因此不允许使用 list作为键名(list可变)
# 可使用数字,字符串,元组
# dict常用方法
# 返回dict中所有值 dict.values()
# 返回类型为dict_values 不支持索引,需要通过list进行转换,同理,dict_keys
print(dict1.values())
# 返回dict中所有键 dic.keys()
print(dict1.keys())
# 返回键值对的形式,返回形式dict_items
print(dict1.items())
结果
{'济南': '鲁A', '青岛': '鲁B', '泰安': '鲁J', '聊城': '鲁P', '日照': '鲁L'}
鲁A
{'济南': '鲁A', '青岛': '鲁BB', '泰安': '鲁J', '聊城': '鲁P', '日照': '鲁L'}
The First dict2------> {'枣庄': '鲁D', '淄博': '鲁C', '滨州': '鲁MM'}
The Secend dict2 ----> {'枣庄': '鲁D', '淄博': '鲁C', '滨州': '鲁M'}
dict_values(['鲁A', '鲁BB', '鲁J', '鲁P', '鲁L'])
dict_keys(['济南', '青岛', '泰安', '聊城', '日照'])
dict_items([('济南', '鲁A'), ('青岛', '鲁BB'), ('泰安', '鲁J'), ('聊城', '鲁P'), ('日照', '鲁L')])
集合
# 集合set
# 无序,不重复
# 创建se
set1 = set([123,456,789])
print(set1)
# 重复元素自动过滤
set2 = set([123, 123, 24, 4214, 123])
print(set2)
# 添加元素
set2.add(100)
print(set2)
# 删除元素
set2.remove(4214)
print(set2)
# set 应用, 实现交集,并集,差集
set1 = set("hello")
set2 = set(("p", "y", "y", "h", "o", "h"))
# 交集
set3 = set1 & set2
# print(set3)
# 并
set4 = set1 | set2
# print(set4)
# 差集
set5 = set4 - set3
set6 = set3 - set4
print(set5)
print(set6)
# 利用无序性 剔除大量数据中的冗余数据