"""练习4-1 比萨
1.想出至少三种你喜欢的比萨,将其名称存储在一个列表中,再使用for循环将每种比萨的名称都打印出来。
2.修改这个for循环,使其打印包含比萨名称的句子,而不仅仅是比萨的名称。对于每种比萨,都显示一行输出,如I like pepperoni pizza。
3.在程序末尾添加一行代码,它不在for循环中,指出你有多喜欢比萨。输出应包含针对每种比萨的消息,还有一个总结性句子,如I really love pizza!。"""
favorite_pizzas = ['pepperoni', 'hawaiian', 'veggie']
# 1. 打印所有比萨的名称。
for pizza in favorite_pizzas: # 遍历每种比萨
print(pizza) # 打印
print("\n") # 换行
# 2.针对每种比萨打印一个句子。
for pizza in favorite_pizzas: # 遍历每种比萨
print("I really love " + pizza + " pizza!") # 打印时添加赞美的句子
# 3.总结性句子
print("\nI really love pizza!")
"""练习4-2 动物
1.想出至少三种有共同特征的动物,将其名称存储在一个列表中,再使用for循环将每种动物的名称都打印出来。
2.修改这个for循环,使其针对每种动物打印一个句子,如‘我喜欢’。
3.在程序末尾添加一行代码,它不在for循环中,指出这些动物的共同之处,如‘它们都吃肉’。"""
animas = ['dog', 'tiger', 'lion']
# 1. 打印所有动物的名称。
for anima in animas: # 遍历每种动物
print(anima) # 打印
print("\n") # 换行
# 2.针对每个动物打印一个句子。
for anima in animas: # 遍历每种动物
print("我喜欢 " + anima) # 打印时添加赞美的句子
# 3.这些动物的共同之处
print("\n它们都吃肉!")
"""练习4-3 数到20
使用一个for循环打印数1~20(含)"""
numbers = list(range(1, 21)) # 定义一个指定范围内的列表
print(numbers) # 打印列表
print('\n')
for number in numbers: # 遍历列表
print(number) # 打印
"""练习4-4 一百万
创建一个包含数1-1000000的列表,使用一个for循环打印出来
(如果输出时间太长,按Ctrl + C 停止输出或关闭输出窗口)"""
numbers = list(range(1, 1000001)) # 定义一个指定范围内的列表
for number in numbers: # 遍历列表
print(number) # 打印
"""练习4-5 计算1~1000000的总和
创建一个列表,其中包含数1~1000000,再使用min()和max()核实该列表确实是从1开始,
到100000结束的。另外,对这个列表调用函数sum(),看看Python将一百万个数字相加需要多长时间。"""
numbers = list(range(1, 1000001)) # 定义一个指定范围内的列表
print(min(numbers)) # 打印最小值
print(max(numbers)) # 打印最大值
print(sum(numbers)) # 打印所以值累加和
"""练习4-6 奇数
通过函数range()指定第三个参数创建一个列表其中包含1~20的奇数,
再使用for循环打印出来。"""
numbers = list(range(1, 21,2)) # 定义一个指定范围(步长为2)的列表
print(numbers)
for number in numbers:
print(number)
"""练习4-7 3的倍数
创建一个列表,其中包含3~30能被3整除的数;再使用一个for循环将这个列表中的数字都打印出来。"""
numbers = list(range(3, 31, 3)) # 定义一个在指定范围内(步长为3)的列表
print(numbers)
for number in numbers: # 遍历列表
print(number)
"""练习4-8 立方
将同一个数字乘三次被称为立方。例如,在Python中,2的立方用2**3表示。
请创建一个列表,其中包含前10个整数(即1~10)的立方,再使用一个for循环将这些立方数都打印出来。"""
cubes = [] # 定义列表
for number in range(1, 11): # 临时变量在指定范围内循环
cube = number**3 # 每迭代出一个值就计算出它的立方并赋值给变量
cubes.append(cube) # 把变量添加到列表
for cube in cubes: # 遍历
print(cube) # 打印出来
"""练习4-9 立方解析
使用列表解析生成一个列表,其中包含前10个整数的立方。"""
cubes = [number**3 for number in range(1, 11)] # 列表推导式写法
for cube in cubes:
print(cube)
"""练习4-10 切片
选择你在本章完成的代码,完成以下操作
1.打印消息THe first three items in the list are。使用切片打印出列表前三的元素
2.打印消息Three items from the middle of the list are使用切片打印出列表中间三个元素
3.打印消息THe last three items in the list are使用切片打印出列表最后三个元素"""
players = ['charles', 'martina', 'michael', 'florence', 'eli'] # 定义列表
print("THe first three items in the list are :")
print(players[0:3]) # 取出下标 0-3 的元素,不包括下标 3
print("Three items from the middle of the list are :")
print(players[1:4]) # 取出下标 1-4 的元素,不包括下标 4
print("THe last three items in the list are :")
print(players[-3:]) # 取出列表最后三项
"""练习4-11 你的比萨和我的比萨
在你为完成练习4-1而编写的程序中,创建比萨列表的副本,并将其存储到变量friend_pizzas中,再完成如下任务:
1.在原来的比萨列表中添加一种比萨。
2.在列表friend_pizzas中添加另一种比萨。
3.核实你有两个不同的列表。为此,打印消息My favorite pizzas are:,
4.再使用一个for循环打印第一个列表;打印消息My friend’s favorite pizzas are:,
5.再使用一个for循环打印第二个列表。核实新增的比萨被添加到正确的列表中。"""
favorite_pizzas = ['pepperoni', 'hawaiian', 'veggie'] # 定义列表
friend_pizzas = favorite_pizzas[:] # 创建比萨列表的副本
# 1.在原来的比萨列表中添加一种比萨
favorite_pizzas.append("meat lover's")
# 2.在列表friend_pizzas中添加另一种比萨
friend_pizzas.append('pesto')
# 3.核实你有两个不同的列表。为此,打印消息My favorite pizzas are:
print("My favorite pizzas are:")
# 4.循环打印第一个列表
for pizza in favorite_pizzas:
print("- " + pizza)
print("\nMy friend's favorite pizzas are:")
# 5.循环打印第二个列表
for pizza in friend_pizzas:
print("- " + pizza)
"""练习4-12 使用多个循环"""
my_foods = ['pizza', 'falafel', 'carrot cake'] # 定义列表
for food in my_foods: # 遍历
print("My favorite foods are:" + food) # 打印
"""练习4-13 自助餐
有一家自助式餐馆,只提供五种简单的食品。请想出五种简单的食品,并将其存储在一个元组中。
1.使用一个for循环将该餐馆提供的五种食品都打印出来。
2.尝试修改其中的一个元素,核实Python确实会拒绝你这样做。
餐馆调整了菜单,替换了它提供的其中两种食品。
请编写一个这样的代码块:给元组变量赋值,并使用一个for循环将新元组的每个元素都打印出来。"""
# 定义元组
menu_items = ('rockfish sandwich', 'halibut nuggets',
'smoked salmon chowder','salmon burger', 'crab cakes',)
print("You can choose from the following menu items:") # 您可以从以下菜单项中进行选择
# 1.打印元组里五种食品
for item in menu_items:
print("- " + item)
# 2.元组的值是不可以改变的,只能重新定义元组了
menu_items = ('rockfish sandwich', 'halibut nuggets',
'smoked salmon chowder','black cod tips', 'king crab legs',)
print("\nOur menu has been updated.") # 我们的菜单已经更新了
print("You can now choose from the following items:") # 您可以从以下菜单项中进行选择
# 打印新元组里五种食品
for item in menu_items:
print("- " + item)