Python系列7-Python循环结构for语句

一.for 循环介绍

经常需要遍历列表的所有元素,对每个元素执行相同的操作。需要对列表中的每个元素都执行相同的操作时,可使用Python中的for 循环。

1.1 从一个案例来看for循环

我这边有一个当前市面上流行的数据库的列表,我需要将这个列表所有的值都打印出来

代码:

dbs = ['Oracle','MySQL','SQL Server','Postgresql','Redis']

for db in dbs:
    print(db)

测试记录:

>>> dbs = ['Oracle','MySQL','SQL Server','Postgresql','Redis']
>>>
>>> for db in dbs:
...     print(db)
...
Oracle
MySQL
SQL Server
Postgresql
Redis
>>>

1.2 研究循环

循环这种概念很重要,因为它是让计算机自动完成重复工作的常见方式之一。例如,在1.1 的简单案例中

for db in dbs:

这行代码让Python获取列表dbs的第一个值’Oracle’,并将它存储在变量db中,接下来python读取下一行代码

print(db)

它让Python打印出db的值,依然是‘Oracle’。鉴于该列表还包含其他值,Python返回到循环的第一行,重复执行,一直到遍历整个列表才结束。

刚开始使用循环时请牢记,对列表中的每个元素,都将执行循环指定的步骤,而不管列表包含多少个元素。如果列表包含一百万个元素,Python就重复执行指定的步骤一百万次,且通常速度非常快。
另外,编写for 循环时,对于用于存储列表中每个值的临时变量,可指定任何名称。然而,选择描述单个列表元素的有意义的名称大有帮助。例如,对于小猫列表、小狗列表和一般性列表,像下面这样编写for 循环的第一行代码是不错的选择:

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

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

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

在for 循环中,可对每个元素执行任何操作。下面来扩展前面的示例,对于每个数据库,都打印一条消息。

代码:

dbs = ['Oracle','MySQL','SQL Server','Postgresql','Redis']

for db in dbs:
    print("The database " + db + " is a good database;")

测试记录:

>>> dbs = ['Oracle','MySQL','SQL Server','Postgresql','Redis']
>>>
>>> for db in dbs:
...     print("The database " + db + " is a good database;")
...
The database Oracle is a good database;
The database MySQL is a good database;
The database SQL Server is a good database;
The database Postgresql is a good database;
The database Redis is a good database;
>>>

1.3 在for 循环结束后执行一些操作

for 循环结束后再怎么做呢?通常,你需要提供总结性输出或接着执行程序必须完成的其他任务。

在for 循环后面,没有缩进的代码都只执行一次,而不会重复执行。如果需要在循环结束后,打印一条这是所有的数据库,需要将相应的代码放在for 循环后面,且不缩进。

代码:

dbs = ['Oracle','MySQL','SQL Server','Postgresql','Redis']

for db in dbs:
    print("The database " + db + " is a good database;")

print("\nThis is all databases;")

测试记录:

>>> dbs = ['Oracle','MySQL','SQL Server','Postgresql','Redis']
>>>
>>> for db in dbs:
...     print("The database " + db + " is a good database;")
...
The database Oracle is a good database;
The database MySQL is a good database;
The database SQL Server is a good database;
The database Postgresql is a good database;
The database Redis is a good database;
>>> print("\nThis is all databases;")

This is all databases;
>>>

参考:

1.Python编程:从入门到实践

猜你喜欢

转载自blog.csdn.net/u010520724/article/details/115174619