美文网首页
009-字典

009-字典

作者: 小D修行笔记 | 来源:发表于2022-07-27 06:20 被阅读0次

\color{red}{创建字典、增加元素、删除元素(删除一个元素、清空字典)}
\color{red}{修改元素、查找元素(key、get、gets、values、items)、遍历字典}

字典简介

  • 字典里面的数据是以键值对形式出现
  • 字典数据和顺序没有关系,不支持下标查找
  • 可以根据 key 查找对应的 value

创建字典

  • 符号为大括号
  • 数据为键值对形式出现
  • 各个键值对之间用逗号隔开

# 空字典
dict1 = {}
dict2 = dict()
# 非空字典
dict3 = {key1: value1 , key2: value2}

增、改元素

字典序列[key] = 值

  • 如果key存在,则修改这个key对应的值
  • 如果key不存在,则新增此键值对
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)

# 增加、修改元素    dict[key] = value 
dict1['name'] = 'Lily'
print(dict1)  # 存在,修改key对应的值

dict1['id'] = 110
print(dict1)  # 不存在,增加键值对到字典

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
{'name': 'Lily', 'age': 20, 'gender': '男'}
{'name': 'Lily', 'age': 20, 'gender': '男', 'id': 110}

删除元素

  • del() / del:删除字典或删除字典中指定键值对

del删除字典

del 字典序列

# 删除字典
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
del dict1
print(dict1)

输出结果

Traceback (most recent call last):
  File "/Users/apple/Desktop/code/014-字典.py", line 22, in <module>
    print(dict1)
NameError: name 'dict1' is not defined

del删除一个键值对

del 字典序列[key]

dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
del dict1['age']
print(dict1)

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
{'name': 'Tom', 'gender': '男'}

清空字典

字典序列.clear()

# 清空字典
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
dict1.clear()
print(dict1)

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
{}

查找

通过key查找

字典序列[key]

# 通过key查找对应的value
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
print(dict1['name'])
print(dict1['age'])
print(dict1['gender'])

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
Tom
20
男

get() 查找数据

字典序列.get(key,默认值)

  • key存在,返回key对应的value
  • key不存在,返回默认值,默认值默认是None
# 通过get查找数据
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
print(dict1.get('name'))  # 存在,返回对应的value
print(dict1.get('id'))  # 不存在,返回默认值None
print(dict1.get('id','查找的数据不存在'))  # 不存在,返回设定的值

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
Tom
None
查找的数据不存在

keys() 查找所有的key

字典序列.keys()

  • 返回一个所有key的列表序列
# keys()
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
print(dict1.keys())

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
dict_keys(['name', 'age', 'gender'])

values()查找所有的value

字典序列.values()

  • 返回一个所有value的列表序列
# values()
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
print(dict1.values())

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
dict_values(['Tom', 20, '男'])

items() 获取所有的键值对,作为一个元素

字典序列.items()

  • 将字典中的每个key、value作为一个元组,返回所有元组的列表集合
# items()
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
print(dict1.items())

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
dict_items([('name', 'Tom'), ('age', 20), ('gender', '男')])

遍历字典的key

# 遍历字典的key
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
for key in dict1.keys():
    print(key)

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
name
age
gender

遍历字典的value

# 遍历字典的value
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
for value in dict1.values():
    print(value)

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
Tom
20
男

遍历字典的item,元组

# 遍历字典的item
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
for item in dict1.items():
    print(item)

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
('name', 'Tom')
('age', 20)
('gender', '男')

遍历字典的item,元组拆包

# 遍历字典的item,拆包
dict1 = {'name': 'Tom', 'age': 20, 'gender': '男'}
print(dict1)
for key, value in dict1.items():
    print(f'{key} = {value}')

输出结果

{'name': 'Tom', 'age': 20, 'gender': '男'}
name = Tom
age = 20
gender = 男

相关文章

  • 009-字典

    1、定义字典 2、增、删、改 3、遍历 4、合并

  • 009-字典

    字典简介 字典里面的数据是以键值对形式出现 字典数据和顺序没有关系,不支持下标查找 可以根据 key 查找对应的 ...

  • 玩偶公仔怎么用礼品纸包装送人?

    毛绒公仔的礼物包装方法。 礼盒先生 基础礼物包装009-玩偶包法 1. 基础礼物包装009-玩偶包法↓ 2. 包装...

  • 009-小结

    2018开始一周了,我的生活发生了一些改变,不知道是好是坏,写出来,也许写的过程就有新的收获,从脑袋空空开始写字,...

  • 009-稀缺

    稀缺是一个基本事实,是经济学的前提。 稀缺有两个原因: 一、你想要的东西别人也想要。 二、人的需求在不断变化,不断...

  • 009-宽心

    今天整个娱乐界最疯狂消息估计就是,王宝强的离婚家事,毫无悬念的成为了头条,盖过了大家关注奥运的程度。公布这样的消息...

  • 009-拍卖

    收藏博物馆 2019 月历,原价 ¥149,拍到手 ¥80。 起拍价 ¥0,加价 ¥2 起,只要有人喊价,我一律加...

  • 009-模块

    模块介绍 概念Python 模块(Module),是一个 Python 文件,以 .py 结尾,包含了 Pytho...

  • @@@@@@@@

    \009-享学课堂安卓架构第一期├01 flutter│ ├Dart异步编程(1)-.mp4│ ├Dart异步...

  • 【火炉炼AI】深度学习009-用Keras迁移学习提升性能(多分

    【火炉炼AI】深度学习009-用Keras迁移学习提升性能(多分类问题) (本文所使用的Python库和版本号: ...

网友评论

      本文标题:009-字典

      本文链接:https://www.haomeiwen.com/subject/lgxgirtx.html