Python--字典(dict)

Python–字典(dict)

字典里的数据是以键值对形式出现,字典数据和数据顺序没有关系,即字典不支持下标,后期无论数据如何变化,只需要安装对应的键的名字查找数据即可。

字典的数据类型为可变类型

字典语法

字典特点:

1.符号为大括号

2.数据为键值对形式出现

3.各个键值对之间用逗号隔开

# 创建有数据字典
dict  = {"name":"Tom","age":20,"gender":"男"}

# 创建空字典
dict1 = {}  # 方法一
dict2 = dict() # 方法二

字典常见操作

键值对新增/修改

写法:字典序列[key] = 值

注意:如果key存在则修改这个key的值,如果key值不存在则新增此键值对

dict  = {"name":"Tom","age":20,"gender":"男"}
dict["id"] = 1  # 新增键值对id:1
dict["name"] = "小明"  # 修改name的值为小明

键值删除

del()/del

del():删除字典

del:字典中指定键值对

语法
del(字典名称)
del 字典序列[key]

举例

dict1= {"name":"Tom","age":20,"gender":"男"}
del(dict1)  # 删除字典
print(dict1)  # 字典不存在,保存

dict1= {"name":"Tom","age":20,"gender":"男"}
del dict1["name"]  # 删除指定键值对
print(dict1)  # {'age': 20, 'gender': '男'}
clear()函数

清除字典数据

语法
字典序列.clear()

清空字典

dict1= {"name":"Tom","age":20,"gender":"男"}
dict1.clear()
print(dict1)  # {}

键值对查找

key值查找

如果当前查找的key存在,则返回对应的值,否则报错

dict1= {"name":"Tom","age":20,"gender":"男"}
print(dict1["name"])  # Tom
print(dict1["id"])  # 报错
get()函数
语法
字典序列.get(key,默认值)

注意:如果当前查找的key不存在,则返回第二个参数(默认值),如果省略第二个参数,则返回None

ict1= {"name":"Tom","age":20,"gender":"男"}
print(dict1.get("name","hello"))  # Tom
print(dict1.get("addr","北京"))  # 北京 addr不存在,则返回第二个默认值:北京
print(dict1.get("addr"))  # None addr不存在,没有设置默认值,返回:None
keys()函数

查找字典中所有的key,返回的是可迭代对象

keys函数的返回值是元组嵌套列表,这个列表可以使用for循环遍历

语法
字典序列.key()

举例

dict1= {"name":"Tom","age":20,"gender":"男"}
print(dict1.keys())  # dict_keys(['name', 'age', 'gender'])  
values()函数

查找到的是字典中所有的valus值,是可迭代对象

语法
字典序列.values()

举例

dict1= {"name":"Tom","age":20,"gender":"男"}
print(dict1.values())  # dict_values(['Tom', 20, '男'])
items()函数

查找字典中所有的键值对,返回可迭代对象,里边的数据是元组,元组的数据1是字典的key,数据2是字典key所对应的值

语法
字典序列.items()

举例

dict1= {"name":"Tom","age":20,"gender":"男"}
print(dict1.items())  # dict_items([('name', 'Tom'), ('age', 20), ('gender', '男')])

字典的循环遍历

遍历字典之key
dict1= {"name":"Tom","age":20,"gender":"男"}
# print(dict1.items())
for key in dict1.keys():
    print(key,end=" ")
# 遍历结果:
name age gender 
遍历字典之value
dict1= {"name":"Tom","age":20,"gender":"男"}
for value in dict1.values():
    print(value,end=" ")
# 遍历结果:
Tom 20 男 
遍历字典之K/V
dict1= {"name":"Tom","age":20,"gender":"男"}
for kv in dict1.items():
    print(kv,end=" ")
# 输出结果:
('name', 'Tom') ('age', 20) ('gender', '男') 
遍历字典之K/V(拆包)

items()函数的返回结果是元组,所以for循环可以设置俩个临时变量

dict1= {"name":"Tom","age":20,"gender":"男"}
for key,value in dict1.items():
    print(key,value)
    print(key,"=",value) /
    .print(f'{key}={value}')
# 输出结果:
name Tom
age 20
gender 男
或者
name = Tom
age = 20
gender =
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值