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

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也同样存在,功能相同,不过因为代码冗长,导致很少使用
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值