Python字典可存储任意类型对象,如字符串、数字、元组…… 优点:取值方便,速度快
1,创建字典
字典由键(key)和对应值(value)成对组成。字典也被称作关联数组或哈希表。基本语法如下:
dict = {‘Alice‘: ‘2341‘, ‘Beth‘: ‘9102‘, ‘Cecil‘: ‘3258‘}
注意:
每个键与值用冒号隔开(:),每对用逗号,每对用逗号分割,整体放在花括号中({})。
键必须独一无二,但值则不必。
值可以取任何数据类型,但必须是不可变的,如字符串,数组或元组。
2,访问字典中的值
print(d[‘key‘]) 如果写了不存在的值会报错
print(d.get(‘key‘)) 如果写了不存在的值,返回None
print(d.get(‘key‘,‘not find ‘)) 如果找不到存在的值,返回 “not find”
print(d.keys()) #获取所有的key 值print(d.values()) #获取所有的value 值if ‘key‘ in d: #判断key是否存在 print(‘key‘)for k,v in d.items(): #遍历字典 print(k,v)
无须转换成list 格式,保留了字典原有的特性 for k in dict: print(k,dict[k]) print(k,dict.get(k)) 取值速度快,性能好
3,修改字典
d[‘key‘] = value key 存在即修改,key不存在即新增d.setdefault(‘key‘,value) 只能新增 4,删除字典元素
d.pop(‘key‘) 必须要传值,因为字典是无序的d.popitem() 随机删除一个del d[‘key‘] d.clear() 清空字典 5,其他
print(dict.items()) 输出一个list格式(非真正意义上的list)print(list(dict.items())) 把字典的key 和 value 转成一个多维list
输出结果:
len
(
dict
):计算字典元素个数,即键的总数。
str
(
dict
):输出字典可打印的字符串。
type
(variable):返回输入的变量类型,如果变量是字典就返回字典类型。
6,字典的键必须初始化
如果视图访问一个字典中不存在的键,会导致一个keyerror。出行keyerror时,程序会由于运行时错误崩溃
用“in ”检查成员关系
if ‘bananas‘ in fruits: fruits[‘bananas‘] += 1else : fruits[‘bananas‘] = 1查看“bananas”键是否在字典中,由于现在没有这个键,所以将它的值初始化为1,这样就能杜绝出行keyerror的可能性用“not in ”替换 “in”
if ‘bananas‘ not in fruits: fruits[‘bananas‘] += 0 #初始化,如果需要fruits[‘bananas‘] += 1使用setdefault 方法
for letter in word: if letter in vowels: found.setdefault(letter,0) found[letter] += 1setdefault 可以保证把一个不存在的键初始化为一个指定的默认值,或者什么也不做(也就是说,已有的键的关联值将保持不变) 访问一个键之前,可以通过确保字典中的每个键都有一个关联值来避免keyerror。尽管这里in和not in 操作符可以提供帮助,不过更成熟的技术是使用setdault 方法
原文地址:https://www.cnblogs.com/zhaoqing-cao/p/11621331.html
时间: 2024-10-10 04:30:37