《python从入门到实践》--第四章基本操作列表 重点及课后练习
Posted TomCat的博客
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《python从入门到实践》--第四章基本操作列表 重点及课后练习相关的知识,希望对你有一定的参考价值。
题目:
4-1 比萨 :想出至少三种你喜欢的比萨,将其名称存储在一个列表中,再使用for 循环将每种比萨的名称都打印出来。
修改这个for 循环,使其打印包含比萨名称的句子,而不仅仅是比萨的名称。对于每种比萨,都显示一行输出,如“I like pepperoni pizza”。
在程序末尾添加一行代码,它不在for 循环中,指出你有多喜欢比萨。输出应包含针对每种比萨的消息,还有一个总结性句子,如“I really love pizza!”。
4-2 动物 :想出至少三种有共同特征的动物,将这些动物的名称存储在一个列表中,再使用for 循环将每种动物的名称都打印出来。
修改这个程序,使其针对每种动物都打印一个句子,如“Adogwould makea great pet”。
在程序末尾添加一行代码,指出这些动物的共同之处,如打印诸如“Any oftheseanimals would makea great pet!”这样的句子。
代码:
#!usr/bin/python # _*_ coding:utf-8 _*_ pizzas = ["牛肉披萨","海鲜披萨","烤肉披萨","鸡肉披萨","番茄披萨"] for pizza in pizzas: #print(pizza) print("我喜欢吃" + pizza) print("总而言之,我真的很喜欢吃各种口味的披萨") animals = ["dog","elephonent","cat","pig"] for animal in animals: #print(animal) print("A "+ animal + " make me feel the beauty of life") print("Any of these animals make a great pet!")
重点:生成一系列数字
使用range()函数生成一系列的数字 squares = [] for num in range(1,21): #print(list(range(1,21))) #square = num**2 可以用可以不用,根据需求来 #squares.append(square) #squares.append(num**2) print(squares,end="")#注意此地方的缩进,是否和for循环的语句属于同一代码块 #列表解析 用一行代码创建上面的平方数列表 #使用这种语法,首先要指定一个列表名,如squares:然后,然后指定一个左方括号,并定义一个表达式 #....用于生成你要存储到列表中的值。在这个示例中,表达式为value**2,她计算平方值。接下来,编写一个for循环, #用于给表达式提供值,再加上右方括号,。在这个示例中,for循环为for value in range(1,11) #它将值1~10提供给表达式value**2。请注意,这里的for循环语句末尾没有冒号。 squares2 = [value**2 for value in range(1,11)] print(squares2)
题目:
4-3 数到20 :使用一个for 循环打印数字1~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的奇数;再使用一个for 循环将这些数字都打印出来。
4-7 3的倍数 :创建一个列表,其中包含3~30内能被3整除的数字;再使用一个for 循环将这个列表中的数字都打印出来。
4-8 立方 :将同一个数字乘三次称为立方。例如,在Python中,2的立方用2**3 表示。请创建一个列表,其中包含前10个整数(即1~10)的立方,再使用一个for 循
环将这些立方数都打印出来。
4-9 立方解析 :使用列表解析生成一个列表,其中包含前10个整数的立方。
代码:
#妈蛋,差点让电脑卡死(─??─) for nums in range(1,21): print(nums) #计算1~1000000的总和 for num in range(1,1000000): min_value = min(range(1,1000001)) max_value = max(range(1,1000001)) sum_value = sum(range(1,1000000)) print("最小值是:%d"%min_value) print("最大值是:%d"%max_value) print("总和是:%d"%sum_value) #奇数 new_num_list = list(range(1,21,2)) print(new_num_list) for nums in new_num_list: print(nums) #被三整除的数 new_num_list2 = list(range(3,21,3)) print(new_num_list2) for nums in new_num_list2: print(nums) #立方 for i in range(1,11): print(i**3) #立方解析 jiexi_lifang = [i**3 for i in range(1,11)] print(jiexi_lifang)
以上是关于《python从入门到实践》--第四章基本操作列表 重点及课后练习的主要内容,如果未能解决你的问题,请参考以下文章