Python学习日记--循环

Python学习日记–循环

1.for循环的应用

# 求1-100的和
ta = 0
for i in range(1,101):
    ta += i
print(ta)
# 求 1-2+3-4+5-6+...-98+99-100
# 第一种
for i in range(1,101):
    if i % 2 == 0:
        qh -= i
    else:
        qh += i
print(qh)
# 第二种
q1 = 0
q2 = 0
for i1 in range(1,100,2):
    q1 += i1
for i2 in range(2,101,2):
    q2 += i2
print(q1 - q2)

#  1-100之间取是3的倍数且个位数是5的数的前两个
count = 0
for i in range(1,101):
    if i % 3 == 0 and i % 10 == 5:
        count += 1
        print(i)
        if count == 2:
            break

2. while循环

1>循环结构:

定义一个变量作为循环判断的起始值
while 条件判断:
	代码块
对标for in range 解读:
                                         i = 1    起始值
for in range( 1 , 101 , 1 )   =====>    while i < 101:  终止值
	         起始  终止  步长                        i += 1  步长

2>案例

练习1:  有1023个桃子, 猴子每天吃桃子剩余个数的一半多1个,问多少天能吃完
tz = 1023  # 桃子的个数
day = 0  # 计数器【天数】
while tz > 0:    # 吃完 记录的剩余的桃子的个数
    tz = tz - (tz // 2 + 1)  # 整除的意思是每一次循环的时候都是整数的桃子,桃子不能有小数
    day += 1
print('1023个桃子猴子需要', day, '天吃完')						
练习2:录入一个大于1的整数,如果这个数值是偶数,将数据整除2后-1,如果这个数是奇数,将这个数据-1再整除2,问多少次之后才能将数据设置为0
num = int(input('请输入一个大于1整数:'))
num1 = num  #  记录原始的数据
count1 = 0
while num > 0:
    if num % 2 == 0:   # 判断奇偶性
        num = num // 2 - 1
    else:
        num = (num - 1) // 2
    count1 += 1
print(num1, '经过运算', count1, '次之后置为0')

练习3:一张纸的厚度是0.8mm,假设纸足够长,问对折多少次可以将纸的高度达到1000米
# 第一种方法
gd = 0.8  
count2 = 0
while gd < 1000 * 1000:  # 首先要统一单位,纸的厚度是毫米,那么1000米的厚度也要转换成毫米
    gd *= 2              # 每次对折都是厚度乘以2
    count2 += 1
print('0.8mm的纸经过', count2, '次对折后达到千米')
# 第二种方法
gd = 0.8
count2 = 0
while True :
	gd *= 2
	count += 1
	if gd >= 1000 * 1000
		print(count2)
		brank
小游戏
"""
数字炸弹:
        规则:有一个出题人 随便在1-100之间设定一个数据,然后其他人猜
            猜小了、猜大了  出题人提示新的范围
            猜中了 就一顿暴揍
        假如是69
        你: 85    出题人 1-85
        他: 70    出题人 1-70
        她: 55     出题人 55-70
        我:  69    挨揍了
"""
import random
sjs = random.randint(1, 100)  # 生成1-100之间的随机数
start = 1                     # 起始值1
stop = 100                   # 终止值100
while True:                  # 猜的动作是循环的
     # 提示输入数字,数字范围改成变量
    pass_sz = int(input('请在' + str(start) +'-' + str(stop) +'之间竞猜:' ))   
    if pass_sz > sjs:      # 然后对输入的值进行判断,大的话把输入的值赋值给终止值,小的话赋值给起始值
        print('猜大了')
        stop = pass_sz
    elif pass_sz < sjs:
        print('猜小了')
        start = pass_sz
    else:
        print('你猜对了,暴揍中。。。。。。')            # 猜中就结束
        break
print('游戏结束了')

3.关键字

1>break:在循环中起到中断循环的作用,退出循环

2>continue:在循环中可以结束当前循环,回到循环条件,可开启下一轮的循环

4.while 和 for 循环的区别

while 使用在循环次数不确定的情况下

for 使用在循环次数确定的情况下

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值