遍历列表

课程笔记:

假设有一个魔术师名单,需要将每个魔术师的名字都打印出来,学习使用for循环来打印所有魔术师的名字:

for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python


for打印当前循环次数 python python用for循环打印列表_for循环_02


深入研究for循环:for循环是按照列表中一个一个的按顺序打印出来的,直至每个列表中的元素输出完,而且通常Python的速度都很快。

for循环的格式:

for 变量 in 列表名: 
	所执行循环的表达式

执行更多的操作,可以使用循环打印其他信息:

for打印当前循环次数 python python用for循环打印列表_元组_03


for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python_04


for打印当前循环次数 python python用for循环打印列表_for循环_05


for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python_06


循环结束后执行的一些操作,没有缩进的代码只执行一次:

for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python_07


for打印当前循环次数 python python用for循环打印列表_元组_08


常见的一些错误:

for打印当前循环次数 python python用for循环打印列表_Python_09


课后小练习:

4-1 披萨: 想出至少三种你喜欢的披萨,将其名称存储在一个列表中,再使用for循环将每种披萨的名称打印出来。

  • 修改这个for循环,使其打印包含披萨名称的句子,而不仅仅是比萨的名称,对于每种披萨,都显示一行输出,如:“I like perpperoni pizza.”
  • 在程序的末尾添加一行代码,它不在for循环中,指出你有多喜欢披萨。输出应包含针对每种披萨的消息,还有一个总结性的句子,如:“I really like pizza.”

for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python_10


for打印当前循环次数 python python用for循环打印列表_元组_11


for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python_12


for打印当前循环次数 python python用for循环打印列表_元组_13


4-2 动物: 想出至少三种共同特征的动物,将这些动物名称存储在一个列表中,再使用for循环将每种动物的名称都打印出来。

  • 修改这个程序,使其针对每种动物都打印一个句子,如:“ A dog would make a great pet.”。
  • 在程序末尾添加一行代码,指出这些动物的类似之处,如打印诸如:“Any of these animals would make a great pet!”这样的句子。


数字列表

课程笔记:

学习使用range()函数:

1.使用range()函数,打印出1到4的数:

for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python_14


for打印当前循环次数 python python用for循环打印列表_for循环_15


2.使用list()和range()函数,产生一个列表:

for打印当前循环次数 python python用for循环打印列表_for循环_16


for打印当前循环次数 python python用for循环打印列表_Python_17


3.range()函数,可以直接新增第三个变量,是产生数的间隔:

for打印当前循环次数 python python用for循环打印列表_for循环_18


for打印当前循环次数 python python用for循环打印列表_元组_19


使用循环产生新的列表,并且一步一步的简化代码:

for打印当前循环次数 python python用for循环打印列表_for循环_20


打印出的结果是相同的:

for打印当前循环次数 python python用for循环打印列表_元组_21


简单的统计计算:

for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python_22


for打印当前循环次数 python python用for循环打印列表_Python_23


课后小练习:

4-3 数到20: 使用一个for循环打印数字1~20(包含20)

4-4 一百万: 创建一个列表,其中包含数字1~1 000 000,再使用一个for循环将这些数字打印出来(输出太久,可以使用Ctrl+C停止输出,或者关闭窗口)

4-5 计算1~1 000 000的总和: 创建一个列表,其中包含数字1~1 000 000,再使用min()和max()核实该列表确实是从1开始,到1 000 000 结束的。另外,对这个列表调用函数sum(),看看Python将一百万个数字相加需要多少时间。

4-6 奇数: 通过函数range()指定第三个参数来创建一个列表,其中包含1~20的循环将这个列表中的数字都打印出来。

4-7 3的倍数: 创建一个列表,其中包含3~30内能被3整除的数字;再使用一个for循环将这个列表中的数字都打印出来。

4-8 立方: 将同一个数字乘三次称为立方,例如,Python中,2的立方用 2**3 表示,请创建一个列表,其中包含前10个整数(即1~10)的立方,再使用一个for循环将这些立方数都打印出来。

4-9 立方解析: 使用列表解析生成一个列表,其中包含前10个整数的立方。

for打印当前循环次数 python python用for循环打印列表_元组_24


for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python_25


输出结果:

for打印当前循环次数 python python用for循环打印列表_for循环_26


for打印当前循环次数 python python用for循环打印列表_for打印当前循环次数 python_27

使用列表的一部分

课程笔记:

访问列表的部分元素称为——切片,创建切片,可指定使用的第一个元素的索引和最后一个元素的索引加1,索引既可以使用正数也可以使用负数索引,示例时处理一个运动员成员列表:

for打印当前循环次数 python python用for循环打印列表_Python_28

for打印当前循环次数 python python用for循环打印列表_for循环_29


复制列表: 可以复制整个列表,也可以复制列表的切片,复制整个列表时,同时省略开始索引和结束索引([ : ]),假设,有一个列表,是你喜欢的几种食物,你的朋友也喜欢相同食物,就可以复制整个列表:

for打印当前循环次数 python python用for循环打印列表_Python_30


for打印当前循环次数 python python用for循环打印列表_for循环_31


课后小练习:

4-10 切片: 选择你在本章编写的一个程序,在末尾添加几行代码,以完成以下几个任务:

  • 打印消息“The first three items in the list are: ”,在使用切片来打印列表前三个元素。
  • 打印消息“The items from the middle of the list are: ”,在使用切片来打印列表中间的三个元素。
  • 打印消息“The last three items in the list are: ”,在使用切片来打印列表末尾的三个元素。

4-11 你的披萨和我的披萨: 在你为完成练习 4-1 而编写的程序中,创建披萨列表的副本,并将其存储在变量 friend_pizza 中,再完成如下任务:

  • 在原来的列表中添加一种披萨。
  • 在列表 friend_pizza 中添加一种披萨。
  • 核实你有两个不同的列表。为此,打印消息“My favorite pizza are:”,再使用一个for循环来打印第一个列表;打印消息“My friend favorite pizza are:”,再使用一个for循环,打印第二个列表。核实新增的披萨添加到了正确的列表中。

for打印当前循环次数 python python用for循环打印列表_元组_32


for打印当前循环次数 python python用for循环打印列表_Python_33

4-12 使用多个循环: 在本节中,为了节省篇幅,程序 foods.py 的每个版本都没有使用 for 循环来打印列表,随意选择一个版本的 foods.py ,在其中编写两个 for 循环,将各个列表找中的食品打印出来
这个练习与 4-11 的最后一个要求一样。

元组

课程笔记:

元组是不可修改的,元组时使用圆括号来标识的,例如讲一个矩形的宽和长存储在一个元组中可以表示为:

for打印当前循环次数 python python用for循环打印列表_for循环_34


修改元组时,会有一个traceback报错,说明了元组是不能被修改的。

for打印当前循环次数 python python用for循环打印列表_元组_35


元组虽然不能修改里面的单个元素,但是可以对元组进行赋值,从而到达修改的目的:

for打印当前循环次数 python python用for循环打印列表_元组_36


for打印当前循环次数 python python用for循环打印列表_Python_37


课后小练习:

4-13 自助餐: 有一家自助式餐馆,只提供五种简单的食品,请想出五种简单是食品,并将其存储在一个元组中。

  • 使用一个 for 循环将该餐馆提供的五种食品都打印出来。
  • 尝试修改其中的一个元素,核实 Python 确实会拒绝你这样子做。
  • 餐馆调整了菜单,替换了它提供的其中两种食品。请编写一个这样的代码块:给元组变量赋值,并使用一个 for 循环将新元组的每个元素都打印出来。

for打印当前循环次数 python python用for循环打印列表_Python_38


for打印当前循环次数 python python用for循环打印列表_Python_39

设置代码格式

课程笔记:
Attention : 易于阅读

  • PEP 8是最早的PEP之一,提供了Python的代码格式设置指南,PEP 8的篇幅较长,但大都与复杂的编码结构相关。
  • 程序阅读的次数往往比编写的次数多,所有在易于编写和易于阅读之间做出选择,大部分选择易于阅读。
  • PEP 8建议每级缩进都是用四个空格,最好不要使用制表符和空格符混用,会造成难以解决的问题。
  • 对于代码的行长,最好不超过80个字符,对于注释的行长最好不超过72个字符
  • 在程序的不同部分分开,可使用空行将代码分隔开。