''' 字典是一种容器数据类型,用于存储键值对(key-value)的数据集合 一、特点 1)通过一个key对应一个确定唯一的值 2)可变性:可以通过索引修改、删除或插入元素,可以改变列表的长度、内容和顺序 3)异构性:可以包含不同类型的元素,如string、int、float、list等 4)无序性 ''' def dic_info(): ''' 1、字面量定义 1)用{}定义,key-value形式表示字典 2)key-value中的key必须是一个可哈希对象,可以使用hash()函数来判断是否可哈希 3)理论上来说,python中的不可变对象数据都可以作为key使用,但是为了方便,大多数情况使用字符串作为key ''' print(hash('ab'))#可哈希对象 print(hash('ab')) print(hash('ab')) # print(hash([1,2,3])) print(hash('abc')) # print(hash((1,2,3,[1]))) t1 = (1, 2, 3, [1]) t1[3].append(3) print(t1) l1 = [1, 2, 3] l1.append('python') print(l1) d1 = {} print(d1) print(type(d1)) d2 = {'name': 'Tom', 'age': 25, 'gender': True, 'hobby': {'first': ('eat', 'drink'), 'second': 'play'}} print(d2) print(type(d2)) ''' 2、构造方法定义 ''' d1 = dict(name='Jack', age=25, gender='male') print(d1) d2 = dict([('name', 'Tom'), ['age', 25]]) print(d2) d3 = dict({'one': 1, 'three': 3}, two=2) print(d3) keys = ['name', 'age', 'gender', 'address'] values = ['Alice', 8, 'male', 54645] d4 = dict(zip(keys, values)) print(d4) ''' 3、字典数据的访问 1)字典没有类似列表、元组那样的数字下标索引 2)字典通过使用key来获取对应的值 3)格式: 字典对象[key] ''' d1 = {'name': 'Tom', 'age': 25, 'gender': True, 'hobby': {'first': ('eat', 'drink'), 'second': 'play'}} print(d1['name']) ''' 4、字典元素的添加与修改 1)字典中一个key对应一个value, 2)当给一个key赋值时,如果key存在,则对当前key对应的值做修改更新 3)如果key不存在,则是添加数据 4)格式: 字典对象[key] = value ''' d1 = {} d1['hobby'] = 'travle' d1['name'] = 'NewJack' # 添加 print(d1) d1['name'] = 'Jack' # 修改 print(d1) del d1['name'] # 删除元素 print(d1) # del d1#删除字典 # print(d1) ''' 5、字典的有序性(Python3.7+) 1)保持添加时的顺序 2)如果编程依赖字典键值对的顺序,建议使用Python3.7+版本 ''' ''' 6、应用场景 1)字典适用于储存有相关性的数据,如用户信息,学生成绩等,每个兼职队标是一个独立数据项,通过键来关联对应的值 2)字典可以通过键来快速定位对应的值,而不需要遍历整个字典 3)字典作为数据容器,可以方便地进行遍历、搜索、插入和删除操作,可以通过循环遍历字典的键或值,通过键进行搜索和更新,通过键值对的添加和删除来 动态修改字典的内容等等 ''' def myhash(): print(hash('ab')) if __name__ == '__main__': dic_info() myhash() print(hash('ab'))
Python-字典
于 2023-12-16 00:13:54 首次发布