文章总览图
一,使用字典
1.在Python中,字典用放在花括号{}中的一些列的键-值对表示。每个键都与一个值相关联,可以使用键来访问与之相关联的值。可将任何Python对象用作字典中的值。
键和值之间用冒号分隔,而键-值对之间用逗号分隔。
输出:
2.访问字典中的值
2.1要获取与键相关联的值,可依次指定字典名和放在方括号内的键。
输出:
2.3在字典中,想存储多少个键-值对都可以。
首先定义一个字典,然后从这个字典中获取与键'points'相关联的值。并将这个值存储在变量new_points中。将这个整数转换为字符串,并打印一条消息。
输出:
3.添加键-值对
字典是一种动态结构,可随时在其中添加键-值对。要添加键-值对,可依次指定字典名、用方括号括起的键和相关联的值。
输出:
键-值对的排列顺序与添加顺序可能不同。Python不关心键-值对的添加顺序,而只关心键和值之间的关联关系。
4.先创建一个空字典
可先使用一对空的花括号定义一个字典,再分行添加各个键-值对。
输出:
5.修改字典中的值
可依次指定字典名、用方括号括起的键以及与该键相关联的新值。
输出:
6.删除键-值对
使用del语句指定字典名和要删除的键,将相应的键-值对彻底删除。
输出:
7.由类似对象组成的字典
字典存储的是一个对象的多种信息。确定使用多行来定义字典时,在输入左括号后按回车键,再在下一行缩进四个空格,指定第一个键-值对,并在它后面加上一个逗号。此后再次按回车键时,文本编辑器将自动缩进后续键-值对,且缩进量与第一个键-值对相同。
定义好字典后,在最后一个键-值对的下一行添加一个右花括号,并缩进四个空格,使其与字典中的键对齐。在最后一个键-值对后面也加上逗号,为以后在下一行添加键-值对做好准备。
输出:
二,遍历字典
字典可用于以各种方式存储信息,因此有多种遍历字典的方式:可遍历字典的所有键-值对,键或值。
1.遍历所有的键-值对
使用一个for循环来遍历这个字典。
声明两个变量,用于存储键-值对中的键和值。for语句的第二部分包含字典名和方法items(),它返回一个键-值对列表。for循环依次将每个键-值对存储到指定的两个变量中。使用key和value这两个变量来打印每个键及其相关联的值。
输出:
遍历字典时,键-值对的返回顺序也与存储顺序可能不同。Python不关心键-值对的存储顺序,只跟踪键和值之间的关联关系。
2.遍历字典中的所有键
2.1不需要使用字典中的值时,使用方法keys()。
Python提取字典favorite_language中的所有键,并依次将它们存储到变量name中。
输出:
2.2遍历字典时,会默认遍历所有的键。可以省略方法keys()。
输出:
2.3在循环中,使用当前键来访问与之相关联的值。
为访问喜欢的语言,我们使用了字典名,并将变量name的当前值作为键。
输出:
2.4使用keys()确定某个人是否在字典中。
方法keys()返回一个列表,其中包含字典中的所有键,因此核实'erin'是否包含在这个列表中。
输出:
2.5按顺序遍历字典中的所有键
要以特定的顺序返回元素,一种办法是在for循环中对返回的键进行排序。使用函数sorted()来获得按特定顺序排列的键列表的副本。
输出:
2.6遍历字典中的所有值
使用方法values(),它返回一个值列表,而不包含任何键。
输出:
2.7最终的列表可能包含大量的重复项。为剔除重复项,可使用集合set()。集合类似于列表,但每个元素都必须时独一无二的。
输出:
三,嵌套
将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为嵌套。可在列表中嵌套字典、在字典中嵌套列表、在字典中嵌套字典。
1.字典列表
1.1将全部字典都放到一个名为aliens的列表中,遍历列表,将每个键-值都打印出来。
输出:
1.2使用range()生成。
输出:
1.3使用for循环和if语句来修改值。
输出:
1.4在字典中存储列表
需要将列表存储在字典中,不是将字典存储在列表中。
输出:
列表和字典的嵌套层级不应太多。
1.5在字典中存储字典
输出:
字典中包含的键应相同,这样嵌套的字典处理起来更容易。
四,集合、函数、方法、元组、列表、字典的区别?
1.集合:Python中用{}括起来一堆数字,这堆数字没有体现映射关系,这堆数字就是一个集合。啥是映射关系?我理解的就是{}里面没有键-值对。set()只是其中一种表现形式。无序,唯一性。
2.函数:函数名():,函数名(参数):。Python自带的函数不需要用def定义,直接调用就可以。
3.方法:方法可以理解成函数的别名。当类实例化时,会把对象本身当做参数(self)传进函数,并返回一个新的函数,这个新函数就叫方法。
4.字典:键-值对。
5.元组:()圆括号。不可添加、修改、删除其内容。
6.列表:[]方括号。