欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python的字典使用方法大全

程序员文章站 2022-06-06 16:13:07
字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 。键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一。值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。python字典的基本操作构建一个新的字典 dic={} dic=dict()2.字典的基本操作 dic={'zhangsan':1000,'lisi':2000,'wa...

字典是另一种可变容器模型,且可存储任意类型对象。

字典的每个键值 key=>value 对用冒号 : 分割,每个键值对之间用逗号 , 分割,整个字典包括在花括号 {} 中 。

键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一。

值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。

python字典的基本操作

  1. 构建一个新的字典
 dic={}    
 dic=dict()

2.字典的基本操作

 dic={'zhangsan':1000,'lisi':2000,'wangwu':3000}
  • 查找
print(dic['lisi'])

2000

使用get函数进行查找,返回指定键的值,如果值不在字典中返回默认值None。

 print(dic.get('lisi')
 print(dic.get('zhaoliu')

2000
None
  • 替换
dic['lisi']=2020
print(dic)

{'zhangsan': 1000, 'lisi': 2020, 'wangwu': 3000}
  • 添加
dic['zhaoliu']=4000
print(dic)

{'zhangsan': 1000, 'lisi': 2000, 'wangwu': 3000, 'zhaoliu': 4000}
  • 成员判断
print('zhaoliu' in dic)

False
  • 删除字典成员
del(dic['zhangsan'])
print(dic)

{'lisi': 2000, 'wangwu': 3000}

或者使用字典的pop方法

dic.pop('zhangsan')

3.把键和值连接成一个字典

name=['zhangsan','lisi','wangwu']
salary=[1000,2000,3000]
dic=dict(zip(name,salary))
print(dic)

{'zhangsan': 1000, 'lisi': 2000, 'wangwu': 3000}

4.分别获得字典的键和值

print(dic.keys())
print(dic.values())

dict_keys(['zhangsan', 'lisi', 'wangwu'])
dict_values([1000, 2000, 3000])

5.单独输出每一组键和值

for k,v in dic.items():
    print(k,v)
    
zhangsan 1000
lisi 2000
wangwu 3000

6.更新字典中的元素

dic1={'zhangsan':1000,'lisi':2000,'wangwu':3000}
dic2={'zhangsan':1010,'lisi':2000,'zhaoliu':4000}
dic1.update(dic2)
print(dic1)

{'zhangsan': 1010, 'lisi': 2000, 'wangwu': 3000, 'zhaoliu': 4000}

7.字典的复制

dic={'zhangsan':1000,'lisi':2000,'wangwu':3000}
dic1=dic
print(dic)
print(dic1)

{'zhangsan': 1000, 'lisi': 2000, 'wangwu': 3000}
{'zhangsan': 1000, 'lisi': 2000, 'wangwu': 3000}
dic={'zhangsan':1000,'lisi':2000,'wangwu':3000}
dic1=dic.copy()
print(dic)
print(dic1)

{'zhangsan': 1000, 'lisi': 2000, 'wangwu': 3000}
{'zhangsan': 1000, 'lisi': 2000, 'wangwu': 3000}

8.清空字典

  • 不仅会清空原来的字典,也会清空复制后的字典
dic={'zhangsan':1000,'lisi':2000,'wangwu':3000}
dic1=dic
dic.clear()
print(dic)
print(dic1)

{}
{}
  • 只能清空原来的字典,不能清空复制后的字典
dic={'zhangsan':1000,'lisi':2000,'wangwu':3000}
dic1=dic.copy()
dic.clear()
print(dic)
print(dic1)

{}
{'zhangsan': 1000, 'lisi': 2000, 'wangwu': 3000}

9.字典的fromkeys函数

Python 字典 fromkeys() 方法用于创建一个新的字典,并以可迭代对象中的元素分别作为字典中的键,且所有键对应同一个值,默认为None。

dic={}
name=['zhangsan','lisi','wangwu']
print(dic.fromkeys(name,1000))

{'zhangsan': 1000, 'lisi': 1000, 'wangwu': 1000}

其中name既可以是字符串,列表,也可以是元组,字典,但是name中的元素必须是不可变对象。

10.字典按值排序
reverse=False时候,按照值的升序排列

dic={'zhangsan':3000,'lisi':1000,'wangwu':2000}
dic_order=sorted(dic.items(),key=lambda x:x[1],reverse=False) 
print(dic_order)

[('lisi', 1000), ('wangwu', 2000), ('zhangsan', 3000)]

reverse=True,按照值的降序排列

dic={'zhangsan':3000,'lisi':1000,'wangwu':2000}
dic_order=sorted(dic.items(),key=lambda x:x[1],reverse=False) 
print(dic_order)

[('zhangsan', 3000), ('wangwu', 2000), ('lisi', 1000)]

本文地址:https://blog.csdn.net/weixin_46530492/article/details/107084142