python学习笔记——循环

引例:

计算10的阶乘:

不用循环时:

result=1
result*=2
result*=3
......
result*=10

现在只是到10的阶乘,还可以手动输入,如果是到1000呢?到100000呢?那工作量将会巨大。下面正式介绍循环。

作用:

重复执行一段代码,直到特定条件不再满足为止。循环使得程序可以自动化地执行重复性任务,而不需要手动重复相同的代码,提高了代码的可读性和效率。

举例:

  • 处理集合中的每个元素。
  • 检查某些条件是否为真,并在条件为真时执行某些操作。
  • 反复执行直到达到某个条件(如用户输入'q'退出循环)。
  • 执行特定次数的迭代或操作。

基本要求:

一定要有循环终止条件,一般不能是死循环

 for

主要用来遍历可迭代对象(序列类型)

基本语法

for 变量 in 序列:
    # 循环体,执行一些代码

在这个结构中,变量是一个在每次循环迭代时赋值的临时变量,而序列则是需要遍历的对象,可以是列表、元组、字符串等。在每次迭代中,变量会依次被赋予序列中的元素值,并执行循环体内的代码,直到序列中的所有元素都被遍历完为止。

range(start,end,step)

生成数字序列

range(num)

生成0到num-1的数字序列

range(num1,num2)

生成num1到num2的数字序列

range(num1,num2,step)

生成的数字序列为num1,num1+step...... step默认为1

# eg1
list1=range(5)
list2=range(1,4)
list3=range(1,10,2)
for i in [1,2,3]:
    a=eval("list%d"%(i))
    for i in a:
        print(i,end=" ")
    print()

# eg2
for i in range(10,0,-1):
    print(i,end=" ")

enumerate

将可迭代对象转成enumerate对象{iterable索引与索引所对应的元素(0,seq[0]),(1,seq[1])......} 原型: enumerate(iterable,start=0)

# eg1
s="123456"
for val in enumerate(s):
    print(val)

# eg2 使用多个参数接收返回值
for index,val in enumerate(s):
    print(index,val)

while

语法:

while 条件:
    # 循环体,执行一些代码

条件是一个布尔表达式,当条件为True时,循环体内的代码将被执行。每次执行循环体后,程序会重新检查条件,如果条件仍然为True,则继续执行循环体,直到条件为False为止。

else和循环搭配

基本语法:

for 变量 in 序列:
    pass
else:
    pass

while 条件:
    pass
else:
    pass

举例:

for else

for i in range(3):
    print(i)
else:
    print("end")

while else

cnt=3
while cnt:
    print(cnt)
    cnt-=1
else:
    print("end")

回到最开始计算阶乘的例子,学习过循环后我们就可以很容易解决这个问题,即

result=1
for i in range(1,11):
    result*=i

result=1
cnt=10
while cnt:
    result*=cnt
    cnt-=1

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值