python操作列表元素(一)

python操作列表元素(一)
python操作列表元素(一)

在之前的文章里有详细的介绍过python创建列表,本文主要是给大家分享如何遍历整个列表,只需要几行代码。无论列表有多长,循环都可以让你对列表中的每个元素采取一个或一系列相同的措施,从而高效地使用列表。

一、遍历整个列表

当我们需要遍历整个列表,并对列表元素执行相同的操作时,可以巧妙的使用for循环。

假设我们有一个名单,我们需要把它们拿出来。因此,我们可以分别获得列表中的每个名称,但这会造成一些问题。如果列表太长,会包含很多重复的代码。此外,当列表长度改变时,必须修改代码。这个问题很容易通过for循环解决。

代码实现:

magicains = ['alice', 'david', 'carolina']for magicain in magicains:
print(magicain)

先定义一个for循环,这行代码让Python从列表magicains中取出一个名字,并将其与变量magicain关联,最后,让Python打印前赋给变量magicain,这样,对于列表中的每一个名字,Python都将重复执行第二行和第三行的代码。直到处理最后一个元素,如果for循环后面没有代码行,则程序运行结束。

1.在for循环执行更多的操作

在for循环中,可对每个元素执行任何操作。具体代码如下所示:

magicains = ['alice', 'david', 'carolina']for magicain in magicains:
print(f'{magicain.title()}, that was a great trick!')

运行结果如下所示:

Alice, that was a great trick!
David, that was a great trick!
Carolina, that was a great trick!

这个循环第一次迭代时,变量magicain的值为’alice’,因此,Python打印第一条消息的抬头为’Alice’;第二次迭代时,抬头为:’David’,第三次抬头为:’Carolina’。

在for循环内,想包含多少行代码都是可以的,每个缩进的代码行都是循环的一部分,针对列表中的每一个元素都执行一次。因此,可以对列表中的每一个值执行任意操作。

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

在上面的for循环中,两个函数调用的print()都缩进了,因此他们都针对列表中的每一个元素执行一次。第二个print()函数写入了换行符,在每一次迭代结束之后插入一个换行符。

运行结果,如下所示:

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.
Carolina, that was a great trick!
I can't wait to see your next trick, Carolina.

2.在循环结束后再执行一些操作

for循环结束之后,没有缩进的代码都只执行一次,不会重复执行。

具体代码,如下所示:

magicains = ['alice', 'david', 'carolina']for magicain in magicains:
print(f'{magicain.title()}, that was a great trick!')
print(f"I can't wait to see your next trick, {magicain.title()}.\n")
print('Thank you, everyone. That was a great magic show!')

从上面的代码可以看到,开头的两个print()函数是重复执行,然后第三个函数没有在for循环内缩进,因此,只执行一次。

运行结果,如下所示:

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.
Carolina, that was a great trick!
I can't wait to see your next trick, Carolina.
Thank you, everyone. That was a great magic show!

二、避免缩进

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注