您的位置:

Python中使用while循环实现多种操作

一、while循环基础语法

while循环是Python中最常用的循环语句之一,其基本语法为:while 条件表达式:

num = 0
while num < 5:
    print(num)
    num += 1

上述代码中,我们定义了一个变量num并初始化为0,然后使用while循环打印出num从0到4的所有数字,并将num每次循环自增1,直到num大于等于5时,循环结束。

二、while循环的嵌套

在Python中,while循环可以和其他语句共同组成循环结构,比如while嵌套if语句,或者while嵌套while语句。下面是一个while嵌套while的例子:

outer_num = 0
while outer_num < 3:
    inner_num = 0
    while inner_num < 3:
        print(f"Outer num: {outer_num}, Inner num: {inner_num}")
        inner_num += 1
    outer_num += 1

上述代码中,我们定义了两个变量outer_num、inner_num,并使用while循环打印出它们的值,其中outer_num的最大值为2,inner_num的最大值为2,这意味着内层while循环会执行9次,外层while循环只会执行3次。

三、while循环中使用break和continue语句

在Python中,还有两个关键字可以用于控制while循环,分别为break和continue。其中,break可以用于跳出循环,而continue可以用于跳过本次循环,进入下一次循环。

num = 0
while num < 10:
    num += 1
    if num == 5:
        break
    print(num)

上述代码中,我们定义了一个变量num并初始化为0,使用while循环打印出所有小于10的数字,但当num等于5时,使用break跳出循环。

num = 0
while num < 10:
    num += 1
    if num == 5:
        continue
    print(num)

上述代码中,我们使用continue语句跳过num等于5的情况,执行输出其他数字。在此例中,num从1到9都被输出了,唯独num等于5的情况被跳过了。

四、while循环中使用else语句

在Python中,while循环还可以结合else语句一起使用。当while循环正常结束时,会执行else语句中的代码,但如果循环被break中断,则不会执行else语句。

num = 0
while num < 10:
    num += 1
    if num == 5:
        break
    print(num)
else:
    print("while loop finished.")

上述代码中,我们定义了一个变量num并初始化为0,使用while循环打印出所有小于10的数字,但当num等于5时,使用break跳出循环。由于循环被中断,else语句并没有执行输出。

五、while循环实现列表操作

在Python中,while循环还可以用于对列表进行操作。下面是一个对列表进行查找、删除和插入操作的例子:

my_list = [2, 4, 5, 6, 8, 9]
num_to_find = 5
pos = 0
while pos < len(my_list):
    if my_list[pos] == num_to_find:
        print(f"{num_to_find} found at position {pos+1}.")
        my_list.pop(pos)
        my_list.insert(pos, num_to_find*2)
        break
    pos += 1
else:
    print(f"{num_to_find} not found.")
print(my_list)

上述代码中,我们定义了一个列表my_list,并找到其中元素值等于5的位置,然后将找到的数值乘以2插入到原来的位置上。在此例中,num_to_find等于5,在列表my_list中的第三个位置上,所以会将5乘以2插入到my_list的第三个位置上。

六、小结

文章对while循环的多个功能进行了详细的介绍。在学习Python时,while循环是一个非常常用的语句,掌握了while循环的基本语法以及与其他语句的组合使用,可以在编写Python程序时更加灵活和高效地实现各种操作。