Python的循环语句

while:

# 循环
# 循环就是重复性的执行一件相同或者相似的事情多次

# 缺点:每行代码完全一致,造成了代码重复
# 重要原则:写程序的时候,要尽可能避免代码重复。因为在以后需求变更时,所有重复性的代码都需要
# 进行修改,不利于程序的维护

# print("****")
# print("****")
# print("****")
# print("****")
# print("****")

# while 循环
# while 表达式:
#   循环体
# 1. 对表达式进行求值,如果表达式为True,则执行循环体
# 2  重复执行步骤1,直到表达式为False,退出while循环

# times = 1
# while times <= 5:
#     print("****")
#     times += 1

# 循环未必总是执行完全相同的事情多次,只要事情有一定的规律,有相似性就可以
#
# value = 1
# while value <= 10:
#     print(value, end = "\t")
#     value += 1

# 求区间程序进行累加的求和
# start = int(input("请输入起始点:"))
# end = int(input("请输入结束点:"))
# index = start
# s = 0
# while index <= end:
#     s += index
#     index += 1
# print("最后的求和结果:",s)

# 求一个数的阶乘。
x = int(input("请输入一个数值:"))
s = 1
index = 1
while index <= x:
    s *= index
    index += 1
print("最终的结果:",s)

while-else:

# 循环跟随的else。

# while与for循环还可以跟随一个可选的else。当循环正常执行结束(没有通过break提前结束循环),
# 则会执行else语句体,否则else语句体不会得到执行。

for i in range(1, 100):
    if i == -5:
        break
else:
    print("循环正常结束,没有通过break中断。")


number = int(input("请输入数值:"))
# 通过else可以用来判断循环是正常结束,还是通过break提前结束,进而
# 可以在else中给出不同的解决方案。
for i in range(1, 100):
    if i == number:
        print("找到了")
        break
else:
    print("没找到")

for:

# for 循环

# for 变量 in 可迭代对象:
#      循环体
# 对于可迭代对象:可依次产生一些列值的对象。

# 对于可迭代对象中的每个值,依次赋值给变量一次,然后执行一次循环体。

# range函数,可以产生一些列整数值。range函数返回的对象就是一个可迭代对象。
# 可以将range函数返回的对象用于for循环当中。

# range函数的三种形式:
# 1. range(end) 返回从0 - end 区间的值。包括0,不包括end。 [0,end)
# 2. range(start, end)  返回从start - end 区间的值。 包括start,不包括end。    [start,end)
# 3. range(start,end,step) 返回从start - end 区间的值,增量(步长)为step,如果没有指定step,则默认为1。

for i in range(5):
    print(i,end=" ")

for i in range(5,10):
    print(i,end=" ")
print()

for i in range(1, 20, 3):
    print(i, end=" ")
print()

# 步长也可以是负数值。
for i in range(5, -3, -1):
    print(i, end=" ")

print()

# 注意: 如果区间的方向与步长的方向相反,则无法获取任何元素。
for i in range(-3, 5, -1):
    print(i, end=" ")

# start = int(input("请输入起始点:"))
# end = int(input("请输入终止点:"))
# s = 0
# for i in range(start, end+1):
#     s += i
# print(s)

value = int(input("请输入数值:"))
s = 1
for i in range(1, value + 1):
    s *= i
print(s)

for-else:

# 循环跟随的else

# while与for循环体还可以跟随一个可选的else。当循环正常执行结束(没有通过break提前结束循环),
# 则会执行else语句,否则else语句体不会得到执行。
for i in range(1,100):
    if i == -5:
        print("结束")
        break
else:
    print("循环正常结束,没有通过break中断。")

number = int(input("请输入数值:"))
# 通过else可以用来判断循环是否正常结束,还是通过break提前结束,进而
# 可以在else中给出不同的解决方案。

for i in range(1,100):
    if i == number:
        print("找到了")
        break
else:
    print("没找到")

for的嵌套:

# 循环嵌套
# 循环中,也存在着循环,这就是循环嵌套
# 当循环嵌套时,外层的循环,我们称为外循环,内部的循环,我们称为内循环。

# 外层循环每执行一次,内层循环都会完整的执行一轮。
# 如果外层循环执行M次,内层循环执行N次,
# 则总共内层循环会执行M * N 次。

for x in range(1,5):
    for y in range(1,6):
        print(x, y, end="   ")
    print()

break:

# break
# break可以用来提前结束循环(跳出循环)。【不管循环还有多少次没有执行】

number = int(input("请输入你要查询的号码[1-99]"))

for i in range(1,100):
    # print(i)
    if i == number:
        print("已经找到")
        break

# 疑问: 我们既然使用break来提前结束循环,那为什么不在循环开始的时候,就控制循环执行的次数呢?

for i in range(1,6):
    print(i)

# break 用来表示提前完成任务,或者因为某种原因,导致任务受阻,无法继续进行的情况,
# 我们就可以使用break提前结束循环。但是,在开始的时候,我们不能减少循环次数,
# 因为我们不确定任务是否会提前完成或者中途受阻,因此在初始时,需要设定最全面的循环。

# break 只能用在循环当中。

continue:

# continue的使用
# continue与break只能用在循环中。
# continue表示结束本次循环,继续下一次循环。【continue仅影响本次循环,对后续的循环没有影响】

# 面试  三轮
# for 面试者 in 面试者人群:
    # 进行第一轮面试
    # if 不合格:
        #continue
    # 进行第二轮面试:
    # if 不合格:
        # continue
    # else:
        # 入职

# continue的使用,如果在前一轮的面试中不合适,则就可以使用continue来结束本次循环。

for i in range(1, 100):
    if i % 2 == 0:
        print(i)

for i in range(1, 101):
    if i % 2 != 0:
        continue
    # 其他条件
    print(i)

# break与continue通常用在选择判断中,因为无条件的break与continue是没有意义的。


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

R_记忆犹新

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值