Python编程:从⼊门到实践——操作列表(第四章+课后答
案)
对应书⽬:Python编程:从⼊门到实践
操作列表(第四章)
要理解新的编程概念,最佳的⽅法是尝试在程序中使⽤它们
网页制作代码
1. for循环注意缩进
动⼿试⼀试
4-1 ⽐萨:想出⾄少三种你喜欢的⽐萨,将其名称存储在⼀个列表中,再使⽤ for循环将每种⽐萨的名称都打印出来
修改这个 for 循环,使其打印包含⽐萨名称的句⼦,⽽不仅仅是⽐萨的名称。对于每种⽐萨,都显⽰⼀⾏输出,如“I like pepperoni pizza”
在程序末尾添加⼀⾏代码,它不在 for 循环中,指出你有多喜欢⽐萨。输出应包含针对每种⽐萨的消息,还有⼀个总结性句⼦,如“I really love pizza!”如何使用pycharm
pizzas = ['pepperoni','chicken_taco','durian']
for pizza in pizzas:
print("I like " + pizza + " pizza")
print("I really love pizza!")
4-2 动物:想出⾄少三种有共同特征的动物,将这些动物的名称存储在⼀个列表中,再使⽤ for 循环将每种动物的名称都打印出来
修改这个程序,使其针对每种动物都打印⼀个句⼦,如“A dog would make a greatpet”
在程序末尾添加⼀⾏代码,指出这些动物的共同之处,如打印诸如“Any of these animals would make a great pet!”这样的句⼦
python基础代码练习pets = ['dog','cat','tortoise']
for pet in pets:
print("A " + pet + " would make a great pet")
print("Any of these animals would make a great pet!")
1. range()可以⽣成⼀系列数字
2. range(1,5)实际输出1,2,3,4
3. 可使⽤函数list()将range()的结果直接转换为列表,list(range(1,5))
4. range()还可以定义步长,range(2,11,2),从2开始每次距离两个,这⾥表⽰输出偶数
5. **2表⽰平⽅,在Python中,两个星号( ** )表⽰乘⽅运算
6. min(列表)寻列表中最⼩值
7. max(列表)寻列表中最⼤值
8. sum(列表)计算列表数字总和
9. 列表解析让你只需编写⼀⾏代码就能⽣成这样的列表:squares = [value**2 for value in range(1,11)],先写表达式,后写for循环动⼿试⼀试
4-3 数到 20:使⽤⼀个 for 循环打印数字 1~20(含)
sql server2000服务器为空白for num in range(1,21):
print(str(num)+" ")
c语言编程入门简单题4-4 ⼀百万:创建⼀个列表,其中包含数字 1~1 000 000,再使⽤⼀个 for 循环将这些数字打印出来(如果输出的时间太长,按 Ctrl + C 停⽌输出,或关闭输出窗⼝)
numbers = list(range(1,1000001))
print(numbers)
4-5 计算 1~1 000 000 的总和:创建⼀个列表,其中包含数字 1~1 000 000,再使⽤min()和 max()核
实该列表确实是从 1 开始,到1 000 000 结束的。另外,对这个列表调⽤函数 sum(),看看 Python 将⼀百万个数字相加需要多长时间
import time
numbers = list(range(1,1000001))
print(min(numbers))
print(max(numbers))
start = time.perf_counter() #Python3.8不再⽀持time.clock(),可使⽤time.perf_counter()替代
print(sum(numbers))
end = time.perf_counter()
print('Running time: %s Seconds'%(end-start))
4-6 奇数:通过给函数 range()指定第三个参数来创建⼀个列表,其中包含 1~20 的奇数;再使⽤⼀个 for 循环将这些数字都打印出来
for num in range(1,20,2):
print(num)
4-7 3 的倍数:创建⼀个列表,其中包含 3~30 内能被 3 整除的数字;再使⽤⼀个 for 循环将这个列表中的数字都打印出来
for num in list(range(3,30,3)):
print(num)
num = list(range(3,30,3))
print(num)
allocative4-8 ⽴⽅:将同⼀个数字乘三次称为⽴⽅。例如,在 Python 中, 2 的⽴⽅⽤ 2**3 表⽰。请创建⼀个列表,其中包含前 10 个整数(即1~10)的⽴⽅,再使⽤⼀个 for 循环将这些⽴⽅数都打印出来
for num in list(range(1,11)):
print(num**3)
4-9 ⽴⽅解析:使⽤列表解析⽣成⼀个列表,其中包含前 10 个整数的⽴⽅
nums = [num**3 for num in list(range(1,11))]
print(nums)
1. 指定索引列表[0:3]表⽰输出0,1,2
2. 如果没有指定第⼀个索引,Python将⾃动从列表开头开始,列表[:4]
3. 如果要索引到列表最后,可以⽤类似的语法,列表[2:]
4. 负数索引返回离列表末尾相应距离的元素,列表[-3:]
5. 同时省略起始索引和终⽌索引([:])。这让Python创建⼀个始于第⼀个元素,终⽌于最后⼀个元素的切⽚
6. 列表复制不能简单的列表A = 列表B,要使⽤列表A = 列表B[:]
7. 列表A = 列表B,表⽰指针指向同⼀变量
动⼿试⼀试
4-10 切⽚:选择你在本章编写的⼀个程序,在末尾添加⼏⾏代码,以完成如下任务
打印消息“The first three items in the list are:”,再使⽤切⽚来打印列表的前三个元素
打印消息“Three items from the middle of the list are:”,再使⽤切⽚来打印列表中间的三个元素
打印消息“The last three items in the list are:”,再使⽤切⽚来打印列表末尾的三个元素
nums = ['A','B','C','D','E']
print("The first three items in the list are: "+str(nums[:3]))
print("Three items from the middle of the list are: "+str(nums[1:4]))
print("The last three items in the list are: "+str(nums[-3:]))
4-11 你的⽐萨和我的⽐萨:在你为完成练习 4-1 ⽽编写的程序中,创建⽐萨列表的副本,并将其存储到变量 friend_pizzas 中,再完成如下任务
在原来的⽐萨列表中添加⼀种⽐萨
在列表 friend_pizzas 中添加另⼀种⽐萨
核实你有两个不同的列表。为此,打印消息“My favorite pizzas are:”,再使⽤⼀个 for 循环来打印第⼀个列表;打印消息“My friend’s favorite pizzas are:”,再使⽤⼀个 for 循环来打印第⼆个列表。核实新增的⽐萨被添加到了正确的列表中
pizzas = ['pepperoni','chicken_taco','durian']
friend_pizzas = pizzas[:]
pizzas.append('banana_pie')
friend_pizzas.append('apple_pie')
print("My favorite pizzas are:")
for pizza in pizzas:
print("I like " + pizza + " pizza")
print("My friend’s favorite pizzas are:")
for pizza in friend_pizzas:
print("I like " + pizza + " pizza")
4-12 使⽤多个循环:在本节中,为节省篇幅,程序 foods.py 的每个版本都没有使⽤for 循环来打印列表。请选择⼀个版本的 foods.py,在其中编写两个 for 循环,将各个⾷品列表都打印出来
my_foods = ['pizza', 'falafel', 'carrot cake']
friend_foods = my_foods[:]
print("My favorite foods are:")
for pizza in my_foods:
print(pizza)
print("\nMy friend's favorite foods are:")
for pizza in friend_foods:
print(pizza)
1. 列表可以修改,⽽元组是不可以修改的
2. 元组看起来犹如列表,但是是使⽤圆括号来标识
3. 定义元组后可以⽤索引来访问其元素
4. 元组变量要变新值只能重新对元组赋值
动⼿试⼀试
4-13 ⾃助餐:有⼀家⾃助式餐馆,只提供五种简单的⾷品。请想出五种简单的⾷品,并将其存储在⼀个元组中
使⽤⼀个 for 循环将该餐馆提供的五种⾷品都打印出来
尝试修改其中的⼀个元素,核实 Python 确实会拒绝你这样做
餐馆调整了菜单,替换了它提供的其中两种⾷品。请编写⼀个这样的代码块:给元组变量赋值,并使⽤⼀个 for 循环将新元组的每个元素都打印出来
my_foods = ('pizza', 'falafel', 'carrot cake','apple','banana')
for pizza in my_foods:
print(pizza)
#my_foods[0] = 'aaa',不可被修改
my_foods = ('pizza', 'falafel', 'carrot cake','big apple','big banana')
for pizza in my_foods:
print("new: " + str(pizza))
1. Python改进提案(Python Enhancement Proposal,PEP),PEP 8 是古⽼的 PEP 之⼀
2. PEP 8建议每级缩进都使⽤四个空格
3. 很多Python程序员都建议每⾏不超过80字符
4. PEP 8还建议注释的⾏长都不超过72字符
5. Python解释器根据⽔平缩进情况来解读代码,但不关⼼垂直间距

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。