4. 操作列表
创始人
2024-05-19 10:02:51
0

4.1 遍历整个列表

你经常需要遍历列表的所有元素,对每个元素执行相同的操作。例如,在游戏中,可能需要将每个界面元素平移相同的距离;对于包含数字的列表,可能需要对每个元素执行相同的统计运算;在网站中,可能需要显示文章列表中的每个标题。需要对列表中的每个元素都执行相同的操作时,可使用Python中的for循环。

下面使用for循环来打印魔术师名单中的所有名字:

magicians = ['alice','david','carolina']
for magician in magicians:print(magician)

详细过程:首先,我们像第3章那样定义了一个列表。接下来,我们定义了一个for循环;这行代码让Python从列表magicians中取出一个名字,并将其存储在变量magician中。最后,我们让Python打印前面存储到变量magician中的名字。这样,对于列表中的每个名字,Python都将重复执行第二行和第三行的代码行。你可以这样解读这些代码:对于列表magicians中的每位魔术师,都将其名字打印出来。

输出结果如下:

alice

david

carolina

4.1.1 深入地研究循环

循环这种概念很重要,因为它是让计算机自动完成重复工作的常见方式之一。例如,在前面的magicians.py中使用的简单循环中,Python将首先读取其中第一行代码:

for magician in magicians:

这行代码让Python获取列表magicians中的第一个值(’alice’),并将其存储到变量magician中。接下来。Python读取下一行代码:

print(magician)

它让Python打印magician的值——依然是’alice’。鉴于该列表还包含其他值,Python返回到循环的第一行:

for magician in magicians:

Python获取列表中的下一个名字——’david’,并将其存储到变量magician中,再执行下面这行代码:

print(magician)

接着就是一直循环11111,直到没有其他的值为止。

刚开始使用循环时请牢记,对列表中的每个元素,都将执行循环的指定步骤,而不管列表包含多少个元素。如果列表包含一百万个元素,Python就重复执行指定的步骤一百万次,且通常速度非常快。

另外,编写for循环时,对于用于存储列表中每个值的临时变量,可指定任何名称。然而,选择描述单个列表元素的有意义的名称大有帮助。例如,对于小猫列表、小狗列表和一般性列表像下面这样编写for循环的第一行代码是不错的选择:

for cat in cats:
for dog in dogs:
for item in list_of_items:

这些命名约定有助于你明白for循环中将对每个元素执行的操作。使用单数和复数式名称,可帮助你判断代码段处理的是单个列表元素还是整个列表。

4.1.2 在for循环中执行更多的操作

在for循环中,可对每个元素执行任何操作。下面来扩展前面的示例,对于每位魔术师,都打印一条消息,指出他的表演太精彩了。

magicians = ['alice','david','carolina']
for magician in magicians:print(magician.title()+",that was a great trick!")

Alice,that was a great trick!

David,that was a great trick!

Carolina,that was a great trick!

在for循环中,想包含多少行代码都可以。在代码行for magician in magicians后面,每个缩进的代码行都是循环的一部分,且将针对列表中的每个值都执行一次。因此,可对列表中的每个值执行任意次数的操作。下面再添加一行代码,告诉每位魔术师,我们期待他的下一次表演:

magicians = ['alice','david','carolina']
for magician in magicians:print(magician.title()+",that was a great trick!")print("I can't wait to see your next trick," + magician.title() + ".\n")

Alice,that was a great trick!

I can't wait to see your next trick,Alice.

David,that was a great trick!

I can't wait to see your next trick,David.

#4-1 披萨:想出至少三种你喜欢的披萨,将其名称存储在一个列表中,再使用for循环将每种披萨的名称都打印出来。
#修改这个for循环,使其打印包含披萨名称的句子,而不仅仅是披萨的名称。对于每种披萨,都显示一行输出,如“I really love pizza!”
pizzas = ['lekaisa','bishengke','dameile']
for pizza in pizzas:print("I like " + pizza.title()+" pizza")
#在程序末尾添加一行代码,它不在for循环中,指出你有多喜欢披萨。输出应包含针对每种披萨的消息,还有一个总结性句子,如“I really love pizza!”
print("I really love pizza")#4-1 披萨:想出至少三种你喜欢的披萨,将其名称存储在一个列表中,再使用for循环将每种披萨的名称都打印出来。
#修改这个for循环,使其打印包含披萨名称的句子,而不仅仅是披萨的名称。对于每种披萨,都显示一行输出,如“I really love pizza!”
pizzas = ['lekaisa','bishengke','dameile']
for pizza in pizzas:print("I like " + pizza.title()+" pizza")
#在程序末尾添加一行代码,它不在for循环中,指出你有多喜欢披萨。输出应包含针对每种披萨的消息,还有一个总结性句子,如“I really love pizza!”
print("I really love pizza")

Carolina,that was a great trick! I can't wait to see your next trick,Carolina.

由于两条print语句都缩进了,因此它们都将针对列表中的每位魔术师执行一次。第二条print语句中的换行符"\n"在每次选代结束后都插入一个空行,从而整洁地将针对各位魔术师的消息编组:

在for循环中,想包含多少代码都可以。实际上,你会发现使用for循环对每个元素执行众多不同的操作很有用。

相关内容

热门资讯

安卓子系统windows11,... 你知道吗?最近科技圈可是炸开了锅,因为安卓子系统在Windows 11上的兼容性成了大家热议的话题。...
电脑里怎么下载安卓系统,电脑端... 你有没有想过,你的电脑里也能装上安卓系统呢?没错,就是那个让你手机不离手的安卓!今天,就让我来带你一...
索尼相机魔改安卓系统,魔改系统... 你知道吗?最近在摄影圈里掀起了一股热潮,那就是索尼相机魔改安卓系统。这可不是一般的改装,而是让这些专...
安卓系统哪家的最流畅,安卓系统... 你有没有想过,为什么你的手机有时候像蜗牛一样慢吞吞的,而别人的手机却能像风一样快?这背后,其实就是安...
安卓最新系统4.42,深度解析... 你有没有发现,你的安卓手机最近是不是有点儿不一样了?没错,就是那个一直在默默更新的安卓最新系统4.4...
android和安卓什么系统最... 你有没有想过,你的安卓手机到底是用的是什么系统呢?是不是有时候觉得手机卡顿,运行缓慢,其实跟这个系统...
平板装安卓xp系统好,探索复古... 你有没有想过,把安卓系统装到平板上,再配上XP系统,这会是怎样一番景象呢?想象一边享受着安卓的便捷,...
投影仪装安卓系统,开启智能投影... 你有没有想过,家里的老式投影仪也能焕发第二春呢?没错,就是那个曾经陪你熬夜看电影的“老伙计”,现在它...
安卓系统无线车载carplay... 你有没有想过,开车的时候也能享受到苹果设备的便利呢?没错,就是那个让你在日常生活中离不开的iOS系统...
谷歌安卓8系统包,系统包解析与... 你有没有发现,手机更新换代的速度简直就像坐上了火箭呢?这不,最近谷歌又发布了安卓8系统包,听说这个新...
微软平板下软件安卓系统,开启全... 你有没有想过,在微软平板上也能畅享安卓系统的乐趣呢?没错,这就是今天我要跟你分享的神奇故事。想象你手...
coloros是基于安卓系统吗... 你有没有想过,手机里的那个色彩斑斓的界面,背后其实有着一个有趣的故事呢?没错,我要说的就是Color...
安卓神盾系统应用市场,一站式智... 你有没有发现,手机里的安卓神盾系统应用市场最近可是火得一塌糊涂啊!这不,我就来给你好好扒一扒,看看这...
黑莓平板安卓系统升级,解锁无限... 亲爱的读者们,你是否还记得那个曾经风靡一时的黑莓手机?那个标志性的全键盘,那个独特的黑莓体验,如今它...
安卓文件系统采用华为,探索高效... 你知道吗?最近安卓系统在文件管理上可是有了大动作呢!华为这个科技巨头,竟然悄悄地给安卓文件系统来了个...
深度系统能用安卓app,探索智... 你知道吗?现在科技的发展真是让人惊叹不已!今天,我要给你揭秘一个超级酷炫的话题——深度系统能用安卓a...
安卓系统的分区类型,深度解析存... 你有没有发现,你的安卓手机里藏着不少秘密?没错,就是那些神秘的分区类型。今天,就让我带你一探究竟,揭...
安卓系统铠无法兑换,揭秘无法兑... 最近是不是有很多小伙伴在玩安卓系统的游戏,突然发现了一个让人头疼的问题——铠无法兑换!别急,今天就来...
汽车安卓系统崩溃怎么刷,一键刷... 亲爱的车主朋友们,你是否曾遇到过汽车安卓系统崩溃的尴尬时刻?手机系统崩溃还能重启,但汽车系统崩溃了,...
miui系统可以刷安卓p系统吗... 亲爱的手机控们,你是否对MIUI系统情有独钟,同时又对安卓P系统的新鲜功能垂涎欲滴?今天,就让我带你...