python_循环语句

循环语句

while
语法格式
while 判断条件:
    执行语句(判断条件为true执行)
流程图

例子:

i = 1
sum = 0
while i <= 100:
    sum = sum + i
    i = i + 1
print("1到100之和为:"+str(sum))
无限循环
  • 通过设置条件表达式永远不为 false 来实现无限循环
  • 实例
    var = 1
    while var == 1:  # 表达式永远为 true
        num = int(input("输入一个数字  :"))
        print("你输入的数字是: ", num)
    
    print("Good bye!")
    • 你可以使用 CTRL+C 来退出当前的无限循环。
    • 无限循环在服务器上客户端的实时请求非常有用。
while循环使用else语句

如果 while 后面的条件语句为 false 时,则执行 else 的语句块。

语法格式
while 判断条件:
    执行语句(判断条件为true执行)
else:
    执行语句(判断条件为false执行)

实例:

count = 0
while count < 5:
    print(count, " 小于 5")
    count = count + 1
else:
    print(count, " 大于或等于 5")
for

在python中for循环可以遍历任何序列的项目,如一个列表或者一个字符串等

流程图
语法格式
for 临时变量 in 列表或字符串等可以迭代对象:
    循环满足条件时执行的代码
for循环的使用
  • 遍历字符串:
    # 遍历字符串
    # 一个一个的输出 叫做循环 也叫做遍历
    s = 'Hello'
    # i是字符串中一个又一个的字符变量
    # s是代表的要遍历的数据
    for i in s:
        print(i)
    
    for i in range(1,10,3):
        print(i)
  • 遍历列表中的元素
    list = ['hello','abcd','你好']
    # 遍历列表中的元素
    for i in list:
        print(i)
  • 遍历列表中的下标
    • len()判断列表中的元素个数
      list = ['hello','abcd','你好']
      # 遍历列表中的下表
      # 判断列表中元素的个数
      print(len(list))
      for i in range(len(list)):
          print(i)

range

range对象是一个迭代器对象,用来产生指定范围的数字序列。

语法格式
  • range(start, stop[, step])
  • 参数说明
    • start: 计数从 start 开始。默认是从 0 开始。例如range(5)等价于range(0, 5);
    • stop: 计数到 stop 结束,但不包括 stop。例如:range(0, 5) 是[0, 1, 2, 3, 4]没有5
    • step:步长,默认为1。例如:range(0, 5) 等价于 range(0, 5, 1)
  • 实例
    >>>range(10)        # 从 0 开始到 9
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    >>> range(1, 11)     # 从 1 开始到 10
    [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
    >>> range(0, 30, 5)  # 步长为 5
    [0, 5, 10, 15, 20, 25]
    >>> range(0, 10, 3)  # 步长为 3
    [0, 3, 6, 9]
    >>> range(0, -10, -1) # 负数
    [0, -1, -2, -3, -4, -5, -6, -7, -8, -9]
    >>> range(0)
    []
    >>> range(1, 0)
    []
  • range在for循环中使用
    # range(5)
    # range方法的结果 一个可以遍历的对象
    # range(5) 0~4 左闭右开[0,5)
    for i in range(5):
        print(i)
    
    # range(1,6)
    # range(起始值,结束值)
    # 左闭右开区间
    for i in range(1,6):
        print(i)
    
    # range(1,10,3)
    # range(起始值,结束值,步长)
    #1 4 7 10
    # 左闭右开
    for i in range(1,10,3):
        print(i)
break  和  continue  语句
流程图
break执行流程图
  • break语句用于while循环和for循环,用于结束整个循环

  • break语句可以跳出 for 和 while 的循环体。如果你从 for 或 while 循环中终止,任何对应的循环 else 块将不执行

  • 当有嵌套循环时,break语句只能跳出最近一层循环

continue执行流程图
  • continue语句用于结束本次循环,继续下一次。

  • continue语句被用来告诉 Python 跳过当前循环块中的剩余语句,然后继续进行下一轮循环

  • 多个循环嵌套时,continue应用于最近的一层循环。

在while语句中   break  与   continue   的执行过程
  • while中使用break
    n = 5
    while n > 0:
        n -= 1
        if n == 2:
            break
        print(n)
    print('循环结束。')
    
    
    #输出
    4
    3
    循环结束。

  • while中使用continue
    n = 5
    while n > 0:
        n -= 1
        if n == 2:
            continue
        print(n)
    print('循环结束。')
    
    #输出
    4
    3
    1
    0
    循环结束。

在for语句中   break  与   continue   的执行过程

for语句中使用continue

for letter in 'Runoob':     
   if letter == 'o':        # 字母为 o 时跳过输出
      continue
   print ('当前字母 :', letter)

#输出
当前字母 : R
当前字母 : u
当前字母 : n
当前字母 : b

for语句中使用break

for letter in 'Runoob':     
   if letter == 'b':    #字母为b时跳出循环
      break
   print ('当前字母为 :', letter)

#输出
当前字母为 : R
当前字母为 : u
当前字母为 : n
当前字母为 : o
当前字母为 : o
循环中的else语句
  • while、for循环可以附带一个else语句(可选)

  • 如果for、while语句没有break语句结束,则会执行else子句,否则不执行。(循环语句可以有 else 子句,它在穷尽列表(以for循环)或条件变为 false (以while循环)导致循环终止时被执行,但循环被 break 终止时不执行。)

语法格式
while
while 条件表达式:
	循环体
else:
	语句块

实例:

while True:
    a = input('请输入一个字符(输入q或Q结束)')
    if a.upper()=='Q':      #a=="Q" or a=="q"
        print("循环结束,退出")
        break
    else:
        print(a)
for
for 变量 in 可迭代对象:
	循环体
else:
	语句块

实例

for n in range(2, 10):
    for x in range(2, n):
        if n % x == 0:
            print(n, '等于', x, '*', n//x)
            break
    else:
        # 循环中没有找到元素
        print(n, ' 是质数')

#输出
2  是质数
3  是质数
4 等于 2 * 2
5  是质数
6 等于 2 * 3
7  是质数
8 等于 2 * 4
9 等于 3 * 3

  • 32
    点赞
  • 47
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值