一、学会如何操作列表
1.遍历整个列表
遍历列表的所有元素,对每个元素执行相同的操作,可使用Python中的for 循环。
- 深入地研究循环
- 在for循环中执行更多的操作
- 在for循环结束后执行一些操作
2.避免缩进错误
一些较为常见的缩进错误:
- 忘记缩进(通常,将紧跟在for 语句后面的代码行缩进,可消除这种缩进错误。)
- 忘记缩进额外的代码行(请确定是否需要将一行或多行代码缩进。)
- 不必要的缩进(为避免意外缩进错误,请只缩进需要缩进的代码。在前面编写的程序中,只有要在for循环中对每个元素执行的代码需要缩进。)
- 循环后不必要的缩进(如果原本只应执行一次的操作执行了多次,请确定你是否不应该缩进执行该操作的代码。)
- 遗漏了冒号(for 语句末尾的冒号告诉Python,下一行是循环的第一行。)
3.创建数值列表
- 使用函数range()(让你能够轻松地生成一系列的数字,几乎能够创建任何需要的数字集)
- 使用range() 创建数字列表(可使用函数list() 将range() 的结果直接转换为列表。如果将range() 作为list() 的参数,输出将为一个数字列表。)
- 对数字列表执行简单的统计计算(min(),max(),sum()等等。)
- 列表解析(列表解析将for循环和创建新元素的代码合并成一行,并自动附加新元素。)
4.使用列表的一部分
- 切片
- 遍历切片
- 复制列表
5.元组
- 定义元组
- 遍历元组中的所有值(用for 循环)
- 修改元组变量(给存储元组的变量赋值)
6.设置代码格式
格式设置指南(PEP 8是最古老的PEP之一,它向Python程序员提供了代码格式设置指南。)
- 缩进(每级缩进都使用四个空格,在程序中混合使用制表符和空格可能导致极难解决的问题。在字处理文档中,常常使用制表符而不是空格来缩进)
- 行长(建议每行不超过80字符,还建议注释的行长都不超过72字符)
- 空行(要将程序的不同部分分开,可使用空行,但不能滥用)
- 其他格式设置指南
二、使用if语句
1.条件测试
每条if语句的核心都是一个值为True或False的表达式,这种表达式被称为条件测试 。Python根据条件测试的值为True还是False 来决定是否执行if语句中的代码。如果条件测试的值为True,Python就执行紧跟在if语句后面的代码;如果为False,Python就忽略这些代码。
- 检查是否相等
- 检查是否相等时不考虑大小写
- 检查是否不相等
- 比较数字
- 检查多个条件(and 和or)
- 检查特定值是否包含在列表中(可使用关键字in)
- 检查特定值是否不包含在列表中(可使用关键字not in)
- 布尔表达式(通常用于记录条件,跟踪程序状态或程序中重要的条件。)
2.if语句
最简单的if语句只有一个测试和一个操作。在if语句中,缩进的作用与for循环中相同。
- if-else语句(在条件测试通过了时执行一个操作,并在没有通过时执行另一个操作;在这种情况下,可使用Python提供的if-else语句。if-else语句块类似于简单的if语句,但 其中的else语句让你能够指定条件测试未通过时要执行的操作。)
- if-elif-else结构(需要检查超过两个的情形。)
- 使用多个elif代码块(可根据需要使用任意数量的elif代码块。)
- 省略else代码块(一些情况下,elif 代码块比使用else 代码块更清晰些。)
- 测试多个条件
3.使用if语句处理列表
- 检查特殊元素
- 确定列表不是空的
- 使用多个列表
4.设置if语句的格式
三、字典
1.使用字典
- 在Python中,字典是一系列键—值对。
- 每个键都与一个值相关联,你可以使用键来访问与之相关联的值。
- 与键相关联的值可以是数字、字符串、列表乃至字典。事实上,可将任何Python对象用作字典中的值。
- 在Python中,字典用放在花括号{} 中的一系列键—值对表示。
- 键—值对是两个相关联的值。指定键时,Python将返回与之相关联的值。
- 键和值之间用冒号分隔,而键—值对之间用逗号分隔。
- 在字典中,你想存储多少个键—值对都可以。 最简单的字典只有一个键—值对。
(1)访问字典中的值
(2)添加键—值对
(3)先创建一个空字典
(4)修改字典中的值
(5)删除键—值对
(6)由类似对象组成的字典
3.遍历字典
- 遍历所有的键—值对
- 遍历字典中的所有键
- 按顺序遍历字典中的所有键
- 遍历字典中的所有值
4.嵌套
将一系列字典存储在列表中,或将列表作为值存储在字典中,这称为嵌套。
- 字典列表(在列表中包含大量的字典,而其中每个字典都包含特定对象的众多信息。)
- 在字典中存储列表(为进一步改进程序,可在遍历字典的for循环开头添加一条if语句。)
- 在字典中存储字典(表示每位用户的字典的结构都相同。)
四、每日练习
用Python写一个冒泡排序。
以下为脚本:
def bubble_sort(alist):
for j in range(len(alist)-1,0,-1):
# j表示每次遍历需要比较的次数,是逐渐减小的
for i in range(j):
if alist[i] > alist[i+1]:
alist[i], alist[i+1] = alist[i+1], alist[i]
num = [76,45,22,12,88,66,33,55,11]
bubble_sort(num)
print(num)
运行结果: