Python学习笔记--(四)字典

使用字典

在Python中,字典是一系列键-值对,键和值之间用冒号分割,键值对之间用逗号分隔。字典中的最后一对键值对后面可以加逗号也可以不加,推荐加上避免新增加键值对时忘记此处的逗号。可将任何Python对象用作字典中的值。

访问字典中的值

要获得与键相关联的值,可依次指定字典名和放在方括号内的键。

apple = {'color':'red','size':'big'}
print(apple['color'])
print(apple['size'])
red
big

添加键值对

字典是一种动态结构,可随时在其中添加键值对。但要注意的是Python不关心键值对的添加顺序,只关心键和值之间的关联关系

apple = {'color':'red','size':'big'}
print(apple)
apple['taste'] = 'good'
print(apple)
{'color': 'red', 'size': 'big'}
{'color': 'red', 'size': 'big', 'taste': 'good'}

在最开始不知道字典内容的时候可以先创建一个空字典。

apple = {}

修改字典中的值

apple = {'color':'red','size':'big','taste':'good'}
apple['taste'] = 'bad'
print(apple)
{'color': 'red', 'size': 'big', 'taste': 'bad'}

删除键值对

可以使用del语句将键值对彻底删除。使用del语句时,必须指定字典名和要删除的键。

del apple['taste']
print(apple)
{'color': 'red', 'size': 'big'}

由类似对象组成字典

字典可以存储一个对象的多种属性,也可以存储多个对象的同一属性

favorite_languages = {
    'Mike':'C',
    'John':'Java',
    'William':'Python',
    'Tang':'Python',
}
print(favorite_languages)
{'Mike': 'C', 'John': 'Java', 'William': 'Python', 'Tang': 'Python'}

遍历字典

有多种遍历字典的方式:遍历字典的键、值或键值对。

遍历所有键值对

apple = {'color':'red','size':'big'}
for key,value in apple.items():
    print("key:" + key)
    print("Value:" + value)
key:color
Value:red
key:size
Value:big

for语句中的方法items()返回一个键值对列表。for循环依次将每个键值对存储到指定的两个变量中。

遍历字典中的所有键

favorite_languages = {
    'Mike':'C',
    'John':'Java',
    'William':'Python',
    'Tang':'Python',
}
for name in favorite_languages.keys():
    print(name)
Mike
John
William
Tang

方法keys()返回一个列表,其中包含字典中的所有键。所以该方法不只用于遍历,譬如下面判断元素是否在字典的键中。同时遍历字典时会默认遍历所有的键,因此如果将上面的代码中for name in favorite_languages.keys():替换为for name in favorite_languages:,输出将不变。

if 'Tang' in favorite_languages.keys():
    print(True)
True

遍历字典中所有的值

如果感兴趣的是字典中的值,那么可以使用方法values(),它返回一个值的列表。

favorite_languages = {
    'Mike':'C',
    'John':'Java',
    'William':'Python',
    'Tang':'Python',
}
for language in favorite_languages.values():
    print(language)
C
Java
Python
Python

这种做法提取字典中所有的值,不考虑是否重复。如果想要剔除掉重复的值,那么使用set()函数将列表转换为集合。

for language in set(favorite_languages.values()):
    print(language)
C
Java
Python

嵌套

有时需要将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为嵌套。

字典列表

我们经常需要在列表中包含大量的字典,其中每个字典代表一个特定对象,字典中包含了这个对象的众多属性。

apple = {'name':'apple','color':'red','size':'middle'}
banana = {'name':'banana','color':'yellow','size':'middle'}
watermelon = {'name':'watermelon','color':'green','size':'big'}
fruits =[apple,banana,watermelon]
print(fruits)
[{'name': 'apple', 'color': 'red', 'size': 'middle'}, {'name': 'banana', 'color': 'yellow', 'size': 'middle'}, {'name': 'watermelon', 'color': 'green', 'size': 'big'}]

在字典中存储列表

每当需要在字典中讲一个键关联到多个值时,都可以在字典中嵌套一个列表。

favorite_languages = {
    'Mike':['C','Java'],
    'John':['C','Python'],
}
print(favorite_languages)
{'Mike': ['C', 'Java'], 'John': ['C', 'Python']}

注意列表和字典的嵌套层级不应太多。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python学习笔记PDF是一种学习Python编程语言的资料形式,它包含了Python的基本语法、数据类型、流程控制、函数、模块、面向对象编程、异常处理等相关内容。以下是关于Python学习笔记PDF的详细内容说明: 1. 基本语法:Python学习笔记PDF中,首先介绍了Python的基本语法,例如如何定义变量、数据类型的使用(包括整数、浮点数、字符串、列表、元组、字典等),以及如何进行算术运算、比较运算和逻辑运算。 2. 流程控制:Python学习笔记PDF中,进一步介绍了流程控制的知识,包括条件判断和循环控制。条件判断主要是通过if语句进行判断执行不同的代码块,而循环控制则通过while循环和for循环来实现重复执行一段代码。 3. 函数:Python学习笔记PDF中,对函数的概念和使用进行了详细的解释。函数是代码的封装和组织方式,通过定义函数可以提高代码的重用性和可读性。学习者将了解到如何定义函数、调用函数、函数参数的传递以及函数返回值的使用。 4. 模块:Python学习笔记PDF中,介绍了Python中的模块和包的概念。模块是一组函数、类或变量的集合,以.py文件的形式存在,可以被其他程序调用和使用。学习者将学习如何导入模块、使用模块中的函数和变量。 5. 面向对象编程:Python学习笔记PDF中,对面向对象编程进行了系统的讲解。面向对象编程是一种以对象为基本单位的编程思想,通过定义类和对象,可以更好地组织和管理代码。学习者将了解如何定义类、创建对象、封装、继承和多态的使用。 6. 异常处理:Python学习笔记PDF中,对异常处理进行了介绍。异常是程序在运行过程中出现的错误,通过捕获和处理异常,可以更好地控制程序的执行流程并提高程序的健壮性。学习者将了解到如何使用try-except语句来捕获和处理异常。 总之,Python学习笔记PDF是一份全面而详细的学习Python编程语言的资料,通过学习该资料,学习者将获得扎实的Python编程基础,并能够运用Python进行简单的程序开发。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值