1

Python循环语句

提示:本文根据b站黑马python课整理

链接指引 => 2022新版黑马程序员python教程

一、while循环的基础语法

语法:
while

while循环的注意事项

  • 条件需提供布尔类型结果,True继续,False停止
  • 空格缩进不能忘
  • 请规划好循环终止条件,否则将无限循环

练习案例:求1-100的和

i = 1
sum = 0
while i <= 100:
    sum = sum + i
    i += 1

print(sum)

猜数字案例:
设置一个范围1-100的随机整数变量,通过while循环,配合input语句,判断输入的数字是否等于随机数

import random
ran = random.randint(0, 10)
flag = True
while flag:
    num = int(input('猜一下吧:'))
    if num == ran:
        flag = False
        print('猜对了')
    elif num > ran:
        print('猜大了')
    elif num < ran:
        print('猜小了')

1.1 while循环的嵌套

  • 同判断语句的嵌套一样,循环语句的嵌套,要注意空格缩进。

    • 基于空格缩进来决定层次关系
  • 注意条件的设置,避免出现无限循环(除非真的需要无限循环)

打印九九乘法表案例:

i = 1
while i <= 9:

    j = 1
    while j <= i:
        print(f'{j} * {i} = {j * i}\t', end='')
        j += 1

    i += 1
    print('')

99

二、for循环的基础语法

语法:
for 临时变量 in 待处理数据集:
    循环满足条件时执行的代码

练习案例:数一数有几个a

text = 'abba aab a'
i = 0
for x in text:
    if x == 'a':
        i += 1

print(f'有 {i} 个a')

2.1 range语句

语法:
for 临时变量 in 待处理数据集(可迭代对象):
    循环满足条件时执行的代码

语法中的:待处理数据集,严格来说,称之为:可迭代类型
可迭代类型指,其内容可以一个个依次取出的一种类型,包括:

  • 字符串
  • 列表
  • 元组
# 语法1:range(num)
# 如range(5)取得的数据是:[0, 1, 2, 3, 4]
for v in range(10):
    print(v)
    
# 语法2:range(num1, num2)
# 如,range(5, 10)取得的数据是:[5, 6, 7, 8, 9]
for v in range(5, 10):
    print(v)
    
# 语法3:range(num1, num2, step)
# 如,range(5, 10, 2)取得的数据是:[5, 7, 9]
for v in range(3, 10, 2):
    print(v)
    

案例:有几个偶数

count = 0
for v in range(100):
    if v % 2 == 0:
        count += 1

print(f'一共有{count}个偶数')

2.2 变量作用域

for循环,将从数据集(序列)中取出的数据赋值给:临时变量

临时变量,在编程规范上,作用范围(作用域,只限定在for循环内部

如果在for循环外部访问临时变量:

  1. 实际上是可以访问到的
  2. 在编程规范上,是不允许、不建议这么做的

如果实在需要在循环外访问循环内的临时变量,可以在循环外预先定义:

如图,每一次循环的时候,都会将取出的值赋予i变量。

  • 由于i变量是在循环之前(外)定义的
  • 在循环外访问i变量是合理的、允许的

11

2.3 for循环的嵌套

forfor

案例:

i = 1
for i in range(1, 101):
    print(f'今天向小美表白第{i}天')
    j = 0
    for j in range(1, 11):
        print(f'送第{j}朵玫瑰花')

print('表白成功')

案例:99乘法表

i = 0
for i in range(1, 10):
    for j in range(1, i+1):
        print(f'{j} * { i} = {i * j}', end='\t')

    print('')

三、while和for循环的区别

两者能完成的功能基本差不多,但仍有一些区别:

  1. while循环的循环条件是自定义的,自行控制循环条件
  2. for循环是一种”轮询”机制,是对一批内容进行”逐个处理”

四、循环中断 : break和continue

4.1 continue

continue关键字用于:中断本次循环,直接进入下一次循环
continue可以用于: for循环和while循环,效果一致

4.2 break

break关键字用于:直接结束所在循环
break可以用于: for循环和while循环,效果一致

注意事项:
continue和break,在for和while循环中作用一致
在嵌套循环中,只能作用在所在的循环上,无法对上层循环起作用

五、综合案例:

发工资:

# 总工资
import random
all = 10000
num = 1000
for v in range(0,20):
    jx = random.randint(1, 10);
    if jx < 5:
        print(f'员工{v},绩效分{jx},不满足')
        continue
    if all >= 1000:
        all -= 1000
        print(f'员工{v},发工资,工资余额{all}')
    else:
        print(f'工资余额0')
        break

总结

以上就是Python循环语句,之后会持续更新,欢迎大家点赞关注呀~~


玲小叮当
86 声望12 粉丝

一名前端人儿的笔记,欢迎来到这里,希望这里的文章对你有所帮助!