python之字典的基本使用和方法

一、概念

       字典是非常常用的一种数据结构,它与json格式的数据非常相似,核心就是以键值对的形式存储数据,字典是通过名字来引用值的数据结构,并且把这种数据结构称为映射,字典中的值没有特殊的顺序,都存储在一个特定的键(key)下,键可以是数字、字符串甚至元组。字典也是python中唯一内建的映射类型。

二、表达式

字典的存储方式为 key : value

注意:key是要唯一的,一般都是字符串,value可以包含任何类型的数据 , 字典是无序的

# 空字典
dict_1 = {}  
# 非空字典
person_message = {"name" :"lzx","age":23,"city":"广州"}

三、基本方法

1、字典查询

方法一:通过key查找出value值

格式:字典名称[key]

person_message = {"name" :"lzx","age":23,"city":"广州"}
print(person_message["age"]) #结果为23

方法二:通过get方法查找出value值

格式:字典名称.get(key)

person_message = {"name" :"lzx","age":23,"city":"广州"}
print(person_message.get("age")) #结果为23

注意:字典中存在key值才能获取到相对应的value值,不存在key会报错:keyError

person_message = {"name" :"lzx","age":23,"city":"广州"}
print(person_message["hobby"]) # 结果会报错

2、删除字典里面的元素

方法一 pop

格式:字典名称.pop(key)

person_message = {"name" :"lzx","age":23,"city":"广州"}
person_message.pop("name")
print(person_message) # 结果为 {"age":23,"city":"广州"}

方法二 del

格式:del 字典名[key]

person_message = {"name" :"lzx","age":23,"city":"广州"}
del person_message["name"]
print(person_message) # 结果为 {"age":23,"city":"广州"}

3、清空字典里的元素

格式:字典名称.clear()

person_message = {"name": "lzx", "age": 23, "city": "广州"}
person_message.clear()
print(person_message) # 结果为{}

4、往字典新增元素key-value

格式:字典名称[新key] = value

注意:新key表示Key不存在于字典,执行的是添加字典元素的操作

person_message = {"name": "lzx", "age": 23, "city": "广州"}
person_message["name"] = "lxr"
print(person_message) # 结果为{'name': 'lxr', 'age': 23, 'city': '广州'}

5、修改字典里面的元素

格式:字典名称[旧key] = value

注意:旧key表示key存在于字典,执行的是修改字典元素的操作

person_message = {"name": "lzx", "age": 23, "city": "广州"}
person_message["hobby"] = "sing"
print(person_message) 
# 结果为{'name': 'lzx', 'age': 23, 'city': '广州', 'hobby': 'sing'}

6、设置默认值

格式:字典名称.setdefault(key,默认的value)

注意:如果key存在,不会修改;如果key不存在,则会添加键值对

person_message = {"name": "lzx", "age": 23, "city": "广州"}
person_message.setdefault("hobby":"sing")
person_message.setdefault("name":""lzx)
print(person_message)
# 结果为person_message = {"name": "lzx", "age": 23, "city": "广州","hobby":"sing"}

7、两个字典合并

格式:旧字典.update(新字典)

注意:将新字典合并到旧字典当中

person_message = {"name": "lzx", "age": 23, "city": "广州"}
person_message2 = {"hobby":"sing","sex":"boy"}
person_message.update(person_message2)
print(person_message) 
# 结果为 {"name": "lzx", "age": 23, "city": "广州","hobby":"sing","sex":"boy"}

8、获取所有的keys

格式:字典.keys()

person_message = {"name": "lzx", "age": 23, "city": "广州"}
person_message.keys()
# 结果为dict_keys(['name', 'age', 'city'])

9、获取所有的values

格式:字典.values()

person_message = {"name": "lzx", "age": 23, "city": "广州"}
print(person_message.values())
# 结果为dict_values(['lzx', 23, '广州'])

10、同时获取所有的key-value

格式:字典.items()

person_message = {"name": "lzx", "age": 23, "city": "广州"}
print(person_message.items())
# 结果为dict_items([('name', 'lzx'), ('age', 23), ('city', '广州')])

11、成员运算符

格式:key in 字典

注意:返回Ture和Flase

person_message = {"name": "lzx", "age": 23, "city": "广州"}
print("name" in person_message.keys()) # 结果为True

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值