python获取字典长度_python字典操作

 2023-09-06 阅读 20 评论 0

摘要:python中字典用于存放具有映射关系的数据 字典中的key不能相同 字典中的key必须为不可变类型,所以可以是数、字符串、元组, 但不能是列表 创建字典 通过{}创建 dict1 = {'eric': 80, 'bob': 90} dict2 = {} 通过函数dict()创建 a =

python中字典用于存放具有映射关系的数据

字典中的key不能相同

字典中的key必须为不可变类型,所以可以是数、字符串、元组, 但不能是列表

创建字典

通过{}创建

dict1 = {'eric': 80, 'bob': 90}

dict2 = {}

通过函数dict()创建

a = [('eric', 80), ('bob', 90)]

dict3 = dict(a)# {'eric': 80, 'bob': 90}

dict4 = dict()# {}

dict5 = dict(eric=80, bob=90)# {'eric': 80, 'bob': 90}

通过zip()创建

zip(key_seq, value_seq)

dict6 = dict(zip('abc', [1, 2, 3]))# {'a': 1, 'b': 2, 'c': 3}

通过dict.fromkeys()创建

dict.fromkeys(key_seq, value)

通常用来初始化字典, 设置value的默认值

dict6 = dict.fromkeys('abc', 0) # {'a': 0, 'b': 0, 'c': 0}

dict7 = dict.fromkeys(range(3), 'x') # {0: 'x', 1: 'x', 2: 'x'}

通过字典推导式创建

dict8 = {i: 2*i for i in range(3)} # {0: 0, 1: 2, 2: 4}

根据key获取value

dict[key]

dict.get(key)

dict.get(key, value)

当key存在时返回key对应的value

当key不存在时返回设置的默认value

dict9 = {'eric': 80, 'bob': 90}

a = dict9.get('eric', None) # 80

b = dict9.get('jean', None) # None

c = dict9.get('jean') # None

获取字典长度

获取字典长度(字典中键值对的个数) len(dict)

获取字典中所有key-value, key, value

获取字典中所有key-value对: dict.items()

获取字典中所有key:dict.keys()

获取字典中所有value: dict.values()

dict10 = {'eric': 80, 'bob': 90}

print(list(dict10.items())) # [('eric', 80), ('bob', 90)]

print(list(dict10.keys())) # ['eric', 'bob']

print(list(dict10.values())) # [80, 90]

设置指定key对应的value值

dict[key] = value

dict.setdefault(key, value)

当key存在时对应的value不变

当key不存在时, 字典尾部新增一个key-value对

dict11 = {'eric': 80, 'bob': 90}

dict11.setdefault('eric', 0)

print(dict11) # {'eric': 80, 'bob': 90}

dict11.setdefault('jean', 0)

print(dict11) # {'eric': 80, 'bob': 90, 'jean': 0}

删除字典

删除字典: del dict

清空字典: dict.clear()

删除指定key-value: dict.pop(key, value)

当key存在时,删除对应key-value, 并返回key对应的value

当key不存在时,不删除字典元素, 返回value值

随机返回并删除字典中的一对键和值(一般删除末尾对):dict.popitem()

dict12 = {'eric': 80, 'bob': 90}

a = dict12.pop('eric', 10)

print(a) # 80

print(dict12) # {'bob': 90}

dict13 = {'eric': 80, 'bob': 90}

b = dict13.pop('jean', 10)

print(b) # 10

print(dict13) # {'eric': 80, 'bob': 90}

dict14 = {'eric': 80, 'bob': 90}

a = dict14.popitem()

print(a) # ('bob', 90)

print(dict14) # {'eric': 80}

字典转化

将字典转化为字符串: str(dict)

dict15 = {'eric': 80, 'bob': 90}

print(str(dict15))# "{'eric': 80, 'bob': 90}"

# list(dict)是获取字典的key list

print(list(dict15))# ['eric', 'bob']

判断字典中是否包含指定的key

判断字典中是否包含指定的key: key in dict

字典复制

字典复制(浅拷贝): a = dict

字典复制(深拷贝): a = dict.copy()

print(id(b) == id(a)) # True 浅拷贝

print(id(c) == id(a)) # False 深拷贝

使用字典格式化字符串

temp = '姓名:%(name)s, 年龄:%(age)d, 薪资:%(salary)010.2f'

eric = {'name': 'eric', 'age': 18, 'salary': 500000}

temp_format = temp % eric

print(temp_format)# "姓名:eric, 年龄:18, 薪资:0500000.00"

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/4/8523.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息