第三天 for循环和条件嵌套

本人为初学者,如果有问题,欢迎各位朋友大佬指点出来,大家共同进步.

for循环使用更加简单,并且可以和while循环进行结合.个人总结:for循环也是可以进行嵌套的使用的,可以搭配while循环语句进行使用,并且语句可以更加简短,不需要定义初始值,可以直接循环range里面定义的内容.

1.i的序列
for i in range(4):  #循环i的值,到4就不会进行打印了,所以打印的值是0,1,2,3
    print(i)


2.range的参数还有 start 和 stop的值
for i in range(1,10,2): #循环i,从1开始到10结束,但是10不会进行输出打印,步长为2.
    print(i)


3.for循环的退出
for i in range(4):  #注意退出的值是3,而不是4.
    print(i)
print("last: ",i)


4.for循环的中途退出
for i in range(10): #本来是要打印从0到9的,由于做了判断退出,就会进行中途退出程序,并且不会回头重新执行.
    print(i)
    if i % 2 == 1:  #取余2的时候为1就进行中途退出
        break
print('last: ',i)

5.案例 计算数值的和 s=a+aa+aaa+aaaa....其中a的取值范围是1-9,最后n个a是由用户进行输入
分析:设计一个项目的变量为m,开始m=0,之后m=10*m+a就是a,再次m=10*m+a就是aa的值,
然后把它累加到s中即可.
a = 0
while a <= 0 or a >= 10:
    a = int(input('a[1-9]:'))   #输入a

n = 0
while n <= 0:
    n = int(input('n:'))    #输入n

m = 0
s = 0
for i in range(n):  #循环语句
    m = 10*m+a
    s = s+m #把循环的值进行相加
    if i < n-1:
        print(m,end='+')
    else:
        print(m,end='=')
print(s)

循环需要注意的事项
1.循环变量的控制循环次数的变量是自动变化的,建议不要人为改变,容易发生逻辑的错误
2.避免step = 0,如果这样变量不变化,会一直原地踏步,循环是没有办法进行循环的
3.for循环在正常的退出时候,循环的变量值结束不会等于step值

forwhile循环的比较
#for 循环写1+..100
s = 0
for i in range(101):
    s+=i
print(s)
# while 循环 1+2..100 你更喜欢哪一个呢?其实在真实的环境中都是可以互相替代的
a = 0
q = 1
while q <= 100:
    a += q
    q += 1
print(a)

示例 能喝多少啤酒? 啤酒2元一瓶,4给啤酒瓶盖子换一瓶酒,2个空瓶子换一瓶酒,,现在10快钱能喝多少瓶酒
m = 10
beers = m // 2 #能喝多少瓶啤酒
caps = 0    #盖子数
bottles = 0    #瓶子数
count = 0   #总共喝多少瓶酒

while beers > 0:    #如果beers是大于0代表程序还需要继续进行下去
    #程序的主题
    caps = caps + beers
    bottles = bottles + beers
    count = count + beers
    print('这次喝掉%d瓶啤酒,总计%d瓶啤酒' %(beers,count))
    beers = 0
    print('(%d 瓶啤酒,%d个盖子,%d个瓶子)' %(beers,caps,bottles))
    if caps >= 4:   #4个瓶盖换一瓶酒
        print('%d个瓶盖换%d瓶啤酒' %(caps - caps % 4,caps // 4))
        beers = beers + caps // 4
        caps = caps % 4
    if bottles >= 2:    #2个空瓶子换一瓶酒
        print('%d 个瓶子换%d瓶啤酒' %(bottles-bottles % 2,bottles // 2))
        beers = beers + bottles // 2
        bottles = bottles % 2
    print('(%d瓶啤酒,%d个盖子,%d个瓶子)' %(beers,caps,bottles))
print('总计喝掉%d瓶啤酒,剩下%d个盖子和%d个瓶子' %(count,caps,bottles))
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值