首页 > 编程笔记 > Python笔记 阅读:21

Python while循环语句的用法(附带实例,新手必看)

Python 程序中,while 是一种基于条件判断的循环机制,只有当判断条件为 True 的时候,循环体中的代码块才会被执行。

while 循环的语法规则如下:
while 判断条件:
    代码块
while 循环的经典用法是通过计数器与某数值比较来进行条件判断。在每次执行代码块的过程中,计数器都会被调整(增加或者减少),直到判断条件不成立,终止循环。

例如,while 循环遍历列表的方法如下所示:
intfs = [{'name': 'Eth1/1', 'status': 'up'},
           {'name': 'Eth1/2', 'status': 'up'},
           {'name': 'Eth1/3', 'status': 'down'},
           {'name': 'Eth1/4', 'status': 'up'}]
 
i = 0 # 计数器i
intfs_num = len(intfs) # 端口数量,用于与计数器的值进行比较
up_intfs = [] # up的端口列表初始化值为空列表
# 当计数器的值小于端口数量时,可以进行循环
while i < intfs_num:
    intf = intfs[i]
    if intf['status'] == 'up':
        up_intfs.append(intf) # up端口追加成员
    i = i + 1 # 对计数器的值进行累加
print(up_intfs) # 在 up 端口列表中,只有Eth1/1、Eth1/2、Eth1/4 相关成员
程序中使用了计数器的值与端口数量进行循环的条件判断,计数器从 0 开始计数,循环的条件是计数器的值小于端口数量。

每次循环通过计数器的值作为索引读取列表成员——列表中的字典,通过字典 status 的 key 名获取状态值,如果状态值为 up,则将字典成员追加到列表中。每完成一次循环,就在末尾将计数器的值自增 1(也可以写为 Python 风格的 i += 1),再进行下一轮循环。

当循环访问到最后一个成员并完成判断与追加后,计数器的值会等于端口数量,于是在下一次循环判断中打破条件,从而终止循环。最后,up_intfs 列表中保存的就是 intfs 字典列表中所有 status 为 up 的字典。

相关文章