python小白日常语法之(字典)

字典dict
1.定义
在这里插入图片描述

my_dict = {}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
注:字典和列表是可变类型不能作为key

2.常用的操作
在这里插入图片描述
2.1 len(dict) 求长度(获取字典里面键值对的数量)

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
# 字典求长度:
print(len(user_info))

运行结果:

4

2.2 dict[“key”] 获取某个值,key不存在会报错
dict.get(key) 获取某个值,key不存在不会报错,返回None

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
# 获取某个值(方法一)
print(user_info["age"]
# 获取某个值(方法二)
print(user_info.get("name"))
# 获取某个值(方法三)
print(user_info.get("weight",45))

运行结果:

18
lemon
45

如果要获取某个不存在的键–将会报错

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
# 获取某个值--报错
print(user_info["weight"]# 获取某个值--none
print(user_info.get("weight"))

运行结果:

Traceback (most recent call last):
  File "D:/pylin/wen_yuze/week_02/demo_0624.py", line 10, in <module>
    print(user_info["weight"])
KeyError: 'weight'  # 提示错误的键
None   

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

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
# 获取字典中所有的key--返回可迭代的对象
print(user_info.keys())
# 可以通过list装换成列表的格式
print(list(user_info.keys()))

运行结果:

dict_keys(['name', 'age', 'sex', 'height'])
['name', 'age', 'sex', 'height']

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

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
# 获取字典中所有的value--返回可迭代的对象
print(user_info.values())
# 可以通过list装换成列表的格式
print(list(user_info.values()))

运行结果:

dict_values(['lemon', 18, True, 1.75])
['lemon', 18, True, 1.75]

补充:

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
# 获取键值对--将键值对组成元组
print(user_info.items())
print(list(user_info.items()))

运行结果:

dict_items([('name', 'lemon'), ('age', 18), ('sex', True), ('height', 1.75)])
[('name', 'lemon'), ('age', 18), ('sex', True), ('height', 1.75)]

2.5 dict[key] = new_value 修改值

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
# 修改值
user_info["name"] = "柠檬"
print(user_info)

运行结果:

{'name': '柠檬', 'age': 18, 'sex': True, 'height': 1.75}

2.6 dict.update(anthor_dict) 将两个字典合并

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
anthor_info = {"moto":"IT",("love",):"red"}  # 元组可作为key
# 补充:update返回的是一个None
print(user_info.update(anthor_info))
print(user_info)

运行结果:

None
{'name': 'lemon', 'age': 18, 'sex': True, 'height': 1.75, 'moto': 'IT', ('love',): 'red'}
在这里插入代码片

2.7 dict,pop(key) 删除指定的值(pop会返回删除的值)

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75,"moto":"IT",("love",):"red"}
# 字典中删除指定的key--返回值
print(user_info.pop("height"))
print(user_info)

运行结果:

1.75
{'name': 'lemon', 'age': 18, 'sex': True, 'moto': 'IT', ('love',): 'red'}

2.8 dict.popitem() 删除最后一个key,—这个是python3.7以后满足后进先出也就是每次都是删除最后一个的原因,在python3.7之前都是随机删除

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75,"moto":"IT",("love",):"red"}
# 字典中删除最后一个key--返回键值对
print(user_info.popitem())
print(user_info)

运行结果:

(('love',), 'red')
{'name': 'lemon', 'age': 18, 'sex': True, 'height': 1.75, 'moto': 'IT'}

2.9 dict.clear() 清空字典

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
# 清空字典
user_info.clear()
print(user_info)

运行结果:

{}

2.10 dict.setdefault(key,value) key存在不会就该数据 ,key不存在,新建键值对

user_info = {"name":"lemon","age":18,"sex":True,"height":1.75}
# key存在,不会修改数据
user_info.setdefault("name","apple")
print(user_info)
# key不存在,新建键值对
user_info.setdefault("moto","running")
print(user_info)

运行结果:

{'name': 'lemon', 'age': 18, 'sex': True, 'height': 1.75}
{'name': 'lemon', 'age': 18, 'sex': True, 'height': 1.75, 'moto': 'running'}

3.应用场景
在开发中的应用场景
使用多个键值对,存储描述一个 物体 的相关信息,描述更复杂的数据信息

拓展:1.locals()也是字典的类型
在这里插入图片描述
在这里插入图片描述
2.什么时候使用"[]",什么时候使用"()"

使用"[]"
(1)序列类型通过数字索引取值的时候
(2)切片操作的时候
(3)字典当中通过key取值的时候
(4)多维数组

使用"()":
使用方法的时候可以用"()"

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值