首页 > 其他 > 详细

1.字典的常见操作

时间:2020-04-26 10:13:45      阅读:38      评论:0      收藏:0      [点我收藏+]

字典的常见操作1

<1>查看元素

除了使用key查找数据,还可以使用get来获取数据

demo:

info = {name:吴彦祖,age:18}

print(info[age]) # 获取年龄

# print(info[‘sex‘]) # 获取不存在的key,会发生异常

print(info.get(sex)) # 获取不存在的key,获取到空的内容,不会出现异常

<2>修改元素

字典的每个元素中的数据是可以修改的,只要通过key找到,即可修改

demo:

info = {name:班长, id:100, sex:f, address:地球亚洲中国北京}

newId = input(请输入新的学号)

info[id] = int(newId)

print(修改之后的id为%d:%info[id])

<3>添加元素

demo:访问不存在的元素

 info = {name:班长, sex:f, address:地球亚洲中国北京}

 print(id为:%d%info[id])

如果在使用 变量名[‘键‘] = 数据 时,这个“键”在字典中,不存在,那么就会新增这个元素

demo:添加新的元素

info = {name:班长, sex:f, address:地球亚洲中国北京}

# print(‘id为:%d‘%info[‘id‘])#程序会终端运行,因为访问了不存在的键

newId = input(请输入新的学号)

info[id] = newId

print(添加之后的id为:%d%info[id])

结果:

请输入新的学号188
添加之后的id为: 188

<4>删除元素

对字典进行删除操作,有一下几种:

  • del
  • clear()

demo:del删除指定的元素

info = {name:班长, sex:f, address:地球亚洲中国北京}

print(删除前,%s%info[name])

del info[name]

print(删除后,%s%info[name])

结果

技术分享图片

 

 

 demo:del删除整个字典

info = {name:monitor, sex:f, address:China}

print(删除前,%s%info)

del info

print(删除后,%s%info)

结果

技术分享图片

 

 

 demo:clear清空整个字典

info = {name:monitor, sex:f, address:China}

print(清空前,%s%info)

info.clear()

print(清空后,%s%info)

结果

技术分享图片

 

 例子1(查看元素):

# 字典是可变的数据类型
# 定义一个字典
my_dict = {"name": "小明", "age": 20}

# <1>查看元素(通过key 获取value)
# 变量名 = 字典名[key]
my_name = my_dict["name"]
print(my_name)

运行结果:

小明

例子2(修改元素):

# 字典是可变的数据类型
# 定义一个字典
my_dict = {"name": "小明", "age": 20}
# <2>修改元素 (如果key存在)
# 字典名[key] = 数值
my_dict["age"] = 23
print(my_dict)

运行结果:

{age: 23, name: 小明}

例子3(添加元素):

# 字典是可变的数据类型
# 定义一个字典
my_dict = {"name": "小明", "age": 20}
# <3>添加元素 (如果key不存在)
# # 字典名[key] = 数值
my_dict["no"] = "007"
print(my_dict)

运行结果:

{no: 007, name: 小明, age: 20}

例子4(删除元素):

# 字典是可变的数据类型
# 定义一个字典
my_dict = {"name": "小明", "age": 20}
# <4>删除元素
# del (通过key删除字典的键值对)
del my_dict["age"]
print(my_dict)

运行结果:

{name: 小明}

例子5(清空):

# 字典是可变的数据类型
# 定义一个字典
my_dict = {"name": "小明", "age": 20}
# <4>清空元素
# clear
# my_dict = {}
my_dict.clear()
print(my_dict)

运行结果:

{}

字典的常见操作2

<1>len()

测量字典中,键值对的个数

技术分享图片

<2>keys

返回一个包含字典所有KEY的列表

技术分享图片

<3>values

返回一个包含字典所有value的列表

技术分享图片

<4>items

返回一个包含所有(键,值)元祖的列表

 技术分享图片

<5>has_key (Python3 已取消)

dict.has_key(key)如果key在字典中,返回True,否则返回False

技术分享图片

例子1:

# # 定义一个字典
my_dict = {"name": "小明", "age": 20}
# <1>len() -> str list tuple dict range
l = len(my_dict)
print(l)

例子2:

# # 定义一个字典
my_dict = {"name": "小明", "age": 20}
# <2>keys
# 返回一个包含字典所有KEY的列表
# python3.x中返回的是一个对象
# python2.x中返回的就是一个列表
keys_list = my_dict.keys()
print(list(keys_list))

运行结果:

[age, name]

例子3:

# # 定义一个字典
my_dict = {"name": "小明", "age": 20}
# <3>values
# 返回一个包含字典所有value的列表
values_list = my_dict.values()
print(list(values_list))

运行结果:

[小明, 20]

例子4:

# # 定义一个字典
my_dict = {"name": "小明", "age": 20}
# <4>items
# 返回一个包含所有(键,值)元祖的列表
items_list = my_dict.items()
print(list(items_list))

运行结果:

[(age, 20), (name, 小明)]

例子5:

# # 定义一个字典
my_dict = {"name": "小明", "age": 20}
# <5>has_key (Python3 已取消)
# dict.has_key(key)如果key在字典中,返回True,否则返回False
# name = "hello"
# if "e" in name:
#     print("存在")

例子6:

# # 定义一个字典
my_dict = {"name": "小明", "age": 20}
# # 通过key 获取value
my_name = my_dict["name1"]
print(my_name)
# if "name" in my_dict:
#     print("存在")
# 通过in 或者not in 判断key是否存在

例子7:

# <6> setdefaut
# # 定义一个字典
my_dict = {"name": "小明", "age": 20}
# 如果key存在 会返回对应的value
# 如果key不存在 那么会使用其默认值 而且会把这个不存在的key和默认值组成一个新的键值对添加到字典中
my_name = my_dict.setdefault("name1", "哈哈")
print(my_name)
print(my_dict)

运行结果:

哈哈
{age: 20, name: 小明, name1: 哈哈}

例子8:

# <7> get
# 定义一个字典
my_dict = {"name": "小明", "age": 20}
# 如果key存在 会返回对应的value
# 如果key不存在 那么会使用其默认值 字典不会发生任何改变
my_name = my_dict.get("name1", "哈哈")
print(my_name)
print(my_dict)

运行结果:

哈哈
{age: 20, name: 小明}
# <8> 字典通过key获取value 的方式有几种?
# dict[key]
# dict.setdefaut(key)
# dict.get(key)

 

1.字典的常见操作

原文:https://www.cnblogs.com/kangwenju/p/12776572.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!