Python笔记6 字典

简介: 本文是作者的Python复习笔记第六篇,专注于Python中的字典(dictionary)数据结构。文中详细解释了字典的创建和基本操作,包括访问、修改、添加和删除键值对的方法。此外,还介绍了如何遍历字典的键值对、键或值,并探讨了字典的高级用法,如字典列表、在字典中存储列表以及字典的嵌套使用。文中通过示例代码演示了字典在实际编程中的应用,帮助读者更好地理解和掌握字典这一重要的数据结构。

一、字典

使用字典可以更方便地对各类真实的事物进行建模,描述他们
在Python中,字典是键-值对,可以通过键访问对应的值,值可以是任意类型的Python对象(字典 、列表、字符串等)
以下为字典的模板,最后一行键-值对也可以加,方便随时加新的键-值对

favorite_language= {
   
    'Alice': 'Python',
    'Herman': 'C++',
    'Edward': 'Java',
    }
print("Herman's favrorite language is " +
    favorite_language['Herman'] +
    ".")

① 对字典进行操作

1. 访问字典中的值

human_0 = {
   'name': 'Alice', 'age':16}
print(human_0)
print(human_0['name'])
{
   'name': 'Alice', 'age': 16}
Alice

2. 修改字典中的值

human_0 = {
   'name': 'Alice', 'age':16}
print(human_0['age'])
human_0['age'] = 21
print(human_0['age'])
16
21

3. 创建空字典

human_0 = {
   }

4. 添加键-值对

键值对之间的排序关系与添加顺序不同,也无关紧要,因为字典只关心键和值之间的关系

human_0 = {
   }
human_0['name'] = 'Alice'
human_0['age'] = 16
print(human_0)

5. 删除键-值对

del dictionary_name[key_name]
human_0 = {
   'name': 'Alice', 'age':16}
print(human_0)
del human_0['age']
print(human_0)
{
   'age': 16, 'name': 'Alice'}
{
   'name': 'Alice'}

② 遍历字典

1. 遍历所有的键-值对

item()是字典的使用方法,它返回键-值对列表

dictionary_name.items()

key,value为自命名的变量

user_0 = {
   
    'user_nickname': 'HADER',
    'user_id':21356,
    'user_first_name':'Hank',
    'user_last_name':'Anderson',
    }
for key,value in user_0.items():
    print("\nKey: " + str(key))
    print("Value: " + str(value))

2. 遍历所有的键

keys()是字典的使用方法,它返回所有的键,它是一个列表,因此可以使用sorted(list_name)对其排序
使之能按顺序遍历字典中的键
当不添加.keys()时遍历字典,返回的结果也是keys,为避免混淆,当需要返回所有键时,使用keys()

dictionary_name.keys()

key为自命名的变量

user_0 = {
   
    'user_nickname': 'HADER',
    'user_id':21356,
    'user_first_name':'Hank',
    'user_last_name':'Anderson',
    }
for key in user_0.keys():
    print("\nKey: " + str(key))

#for key in sorted(user_0.keys()):
    #print("\nKey: " + str(key))

3. 遍历所有的值

values()是字典的使用方法,它返回所有的值,它是一个列表,因此可以使用sorted(list_name)对其排序
使之能按顺序遍历字典中的值

dictionary_name.values()

value为自命名的变量

user_0 = {
   
    'user_nickname': 'HADER',
    'user_id':21356,
    'user_first_name':'Hank',
    'user_last_name':'Anderson',
    }
for value in user_0.values():
    print("\nValue: " + str(value))

剔除Values中的重复值:
当需要清洗许多值中重复的值时,可以使用set(),set名为集合,集合中的所有元素是独一无二的。

set(list_name)
favorite_languages= {
   
    'Alice': 'Python',
    'Herman': 'C++',
    'Edward': 'Java',
    'Bob': 'C++',
    }
for language in set(favorite_languages.values()):
    print(language)

③ 字典的嵌套使用

1. 字典列表:在列表中存储字典

在列表中存储多名用户的信息,并为每个用户创建字典,这样就可以通过遍历列表,用相同的办法管理用户。
human_0 = {‘name’: ‘Alice’, ‘age’: 16}
human_1 = {‘name’: ‘Bob’, ‘age’: 21}
human_2 = {‘name’: ‘Tom’, ‘age’: 66}
human = [human_0, human_1, human_2]
for person in human:
print(person)

2.在字典中存储列表

有时需要在字典中为某些键-值对,添加列表形式的值,比如一个人可能同时喜欢多种语言,这个键-值对的值就是一个列表

favorite_languages= {
   
    'Alice': 'Python',
    'Herman': ['C++', 'Python', 'Java'],
    'Edward': ['Java', 'C++'],
    'Bob': 'C++',
    }
for language in favorite_languages.items():
    print(language)

3.在字典中存储字典

不作讨论,自行了解

目录
相关文章
|
17天前
|
存储 Python 容器
python字典的常用操作方法
python字典的常用操作方法
|
18天前
|
存储 JSON JavaScript
使用 Python 将字典转换为 JSON
【8月更文挑战第27天】
15 2
|
24天前
|
存储 索引 Python
六:《Python基础语法汇总》— 字典和序列操作
本篇文章讲解了对字典元素的索引,以及字典常用的方法和函数;对字典的遍历;字典推导式和关于序列的运算符及方法
14 2
|
16天前
|
存储 数据库 Python
Python 中的字典是什么?
【8月更文挑战第29天】
14 0
|
16天前
|
Python
python在列表、元素、字典、集合和numpy的数组前加上星号 * 是什么含义,以及*args和**kwargs的使用
python在列表、元素、字典、集合和numpy的数组前加上星号 * 是什么含义,以及*args和**kwargs的使用
22 0
|
21天前
|
Python
合并两个 Python 字典
【8月更文挑战第24天】
11 0
|
24天前
|
Python
【python】】Python 的 queue 模块使用笔记
【python】】Python 的 queue 模块使用笔记
23 0
|
25天前
|
Python
Python笔记9 类
本文是作者的Python复习笔记第九篇,深入探讨了Python中的类和面向对象编程。文中详细解释了如何创建类、实例化对象、定义和使用类方法,以及类的继承、重写方法和嵌套类的使用。此外,还讨论了类模块的导入和导出,包括处理类之间的依赖关系。通过示例代码,文章展示了类在Python编程中的应用和重要性。
23 0
|
25天前
|
存储 Python
Python笔记8 函数
本文是作者的Python复习笔记第八篇,全面介绍了Python中的函数定义与使用,包括函数的参数传递(位置参数、关键字参数、默认参数、列表参数、任意数量参数和关键字参数)、函数的返回值以及如何创建和调用函数库(模块),并提供了丰富的示例代码。
22 0
|
25天前
|
Python
Python笔记7 输入与输出
本文是作者的Python复习笔记第七篇,主要介绍了Python中的输入与输出操作。文中详细解释了如何使用input()函数进行用户输入,包括添加多行字符串提示和字符串转列表输入的方法,以及如何使用print()函数进行格式化输出,提供了多种格式化字符串的示例。
24 0