欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python基础(4)--循环语句

程序员文章站 2022-05-12 10:40:31
...

1.while 循环

  • 循环(while & for)的作用:

    • 让指定代码重复执行
  • 格式:

    # 1. 定义一个计数器
    i = 0
    # 2. 定义一个while循环
    while i < 3:
        # 3.书写需要重复执行的代码
        print('hello world!')
        # 4.修改计数器
        i += 1
    
    • 注意:
      • 即使循环结束,计数器的值依然存在
      • 如果一个循环的判断条件一直成立,成为死循环(所以修改计数器很重要。。。)

2.while 循环应用1

​```
# 1. 计算1~100的累积和(包含1和100)
​
# 0. 定义一个变量保存求和结果
ret = 0
# 1. 定义计数器
i = 1
# 2. 定义while循环
while i <= 100:
    # 3. 书写需要重复执行的代码
    ret += i
    # 4. 修改计数器
    i += 1
​
print('计算1~100的累积和(包含1和100)结果为%d' % ret)
​```

3.while 循环应用2

​```
# 0. 定义一个变量 保存求和结果
ret = 0
​
# 1. 定义计数器
i = 1
# 2. 定义while循环
while i < 101:
​   # 3. 书写需要重复执行的代码
    # 3.1 判断是否是偶数
    if i % 2 == 0:
        ret += i
    # 4. 修改计数器
    i += 1
​
print('计算1~100之间偶数的累积和(包含1和100)结果为:%d' % ret)
​```

4.while 循环嵌套

  • 格式:
    # 定义外循环计数器
    i = 0 
    while 条件1:
        条件1成立, 执行的代码
        # 定义内循环计数器
        j = 0
        while 条件2:
            条件2成立, 执行的代码
            # 修改内循环计数器
            j += 1
        # 修改外循环计数器
        i += 1
        
  • 结论:
    • 外部循环 循环1次,内部循环 循环N次
    • 多个计数器都需要修改,避免死循环

5 while 嵌套应用

    '''
    完成以下图形的输出
    *****
    *****
    *****
    *****
    *****
'''

i = 1
while i <= 5:
    j = 1
    while j <= 5:
        # 输出“*”,且不换行
        print("*",end="")
        j += 1
    # 内部循环完5次后,换行再执行
    print()
    i += 1
  • print(“hello”) 实际为 print(“hello”,end="\n") 的简写
  • 将 end="\n" 中的\n 去除,将完成不换行的功能,即在该行 输出完 此次内循环的所有值 直至进入外循环。
"""  
* 
* * 
* * * 
* * * *  
* * * * *
"""

i = 1
while i <= 5:
    j = 1
    while j <= i:
        print("*", end=" ")
        j += 1
    print()
    i += 1

6.for循环

  • 循环分类
    • while循环
      • 死循环(必须设置终止条件,例如修改计数器)
  • for循环
    • 循环遍历可迭代对象
      • 可迭代对象:只要可以使用for循环遍历的对象就是可迭代对象
      • 对象:变量(python中,万物皆对象)
  • 格式:
for 临时变量 in 字符串等可迭代对象& range函数
  • range用法
    • range(a)
      • [0, a)
    • range(a, b)
      • [a, b)
  • random.randint用法
    • randint(a, b)
      • [a, b]
  • range 和 randint 均只会在区间取整

7.判断条件问题

flag = True

a = (flag == True)
print(a)
if flag == True:
    print('哈哈')
  • 常理来说,我们的判断条件可能会如上书写,由print(a)的到的数据可知,if本身的判断逻辑是看条件本身是True or False,在决定执行后面的代码,所以可以对其进行简写,如下:

    flag = True
    
    if flag:
        print('哈哈')
    
    a = -1
    if a:
        print('哈哈')
    
  • 除了True or False, (其他数字 or 0) 也可以作为if的判断条件,非0即真,为0则假,和True or False等价

  • 但是一般还是会使用True or False, 显得专业

8.break and continue

  • 必须配合循环(while & for)使用
  • 特点:
    • break: 终止循环
    • continue:提前结束本次循环,并马上进入下次循环
    • 只会影响其所在或者最近的层级,不会影响外层
  • 思考:
    • 只要循环中出现了break 或者 continue 就会终止循环或者是提前结束本次循环
    • 假命题,出现不一定执行,若其出现在内循环中,且内循环条件完全不成立时,不会执行。

9. for-else

  • 格式:
for 临时变量 in 字符串等可迭代对象range:
    循环成立执行的代码
else:
    当for循环正常结束后, 将执行的代码

  • 结论:
    • 默认情况下,监听For循环正常结束后,将执行else中的代码
    • 如果循环中执行了break 导致程序循环异常终止,那么else后的代码将不再执行
    • while-else也同样存在,功能相同,不过因为代码冗长,导致很少使用
相关标签: 概念 基础