python_2_while、if、for循环

这篇原创博客由Christal K撰写,深入探讨了Python编程中的if、while和for循环,通过实例代码展示了它们的使用和练习,帮助读者更好地理解和掌握这些基本的控制流结构。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章为原创,作者为 Christal K


前言

if 、while 、for 循环


一、if 、while 、for 循环练习?

代码如下:

#!/usr/bin/env python
# coding=utf-8
# @FileName  :while.py
# @Time      :2022/12/2 21:21
# @Author    :Christal K


if __name__ == "__main__":
    run_code = 0



# 1-100的和
i = 1
sum = 0

while i <= 100:
    sum += i
    i += 1

print(sum)



# while循环,无限次机会,提示第几次猜测,提示猜大和猜小
# ? 不知道最后怎么输出 猜对了语句 ---在while循环结束后,输出该语句,才会执行
import random
num = random.randint(1,10)
i = 1
guess_num = int(input("请输入猜测的数字"))

while guess_num != num:
    i += 1
    if guess_num - num > 0:
        print("猜错了,您输入的数字大了")
    else:
        print("猜错了,您输入数字小了")
    guess_num = int(input(f"请输入第{i}猜测的数字"))
print(f"恭喜您在第{i}次猜对了,数字是{num}")



# while循环 嵌套 while循环
# 距离毕业多少天,每天学习多少小时?

day = 1

while day < 10: # 满足条件时进入循环,不满足跳出
    print(f"今天是{day}天")

    import random
    study_time = random.randint(1, 10)
    i = 0

    while study_time < 10:
        study_time +=1
        i += 1
    print (f"今天学习了{i}小时")

    day +=1
    print("--------------")

print("每天都要努力呀")



# 使用print语句输出不换行
print("great boy",end ="")
print(" miss you",end = "")
print("------------")

# 使用 \t
print("great boy")
print("nice gril")
print("great\tboy")
print("nice\tgril")



# 使用while循环输出九九乘法表

row = 1 #行
while row <= 9:

    column = 1 # 列
    while column <= row:
        print(f"\t{row}*{column}={row * column}",end ="")
        column += 1
    row += 1
    print("\t")
print('\r ................')

# 空格在哪影响输出?
row = 1 #行
while row <= 10:
    print("\t")
    column = 1 # 列
    while column <= row:
        print(f"\t{row}*{column}={row * column}",end ="")
        column += 1
    row += 1

print('\r -------------------')

# for循环 :轮询机制,一个个处理(依次取出),无法定义循环条件,无法构建无限循环
# 遍历字符串

name = "inkatha"
for x in name:
    print(x)
print('\r -------------------')


name = "i love male mother"
count = 0
for x in name:
    if x == "e":
        count +=1
print(f"{count}")



# range语句三个用法

for x in range(10):
    print (x,end = " ")
print(' -------------------')

for x in range(1,10):
    print (x,end = " ")
print(' -------------------')

for x in range(1,10,2):
    print (x,end = " ")
print(' -------------------')


# 使用for循环遍寻range序列,确定有几个偶数
num = int(input("请输入一个数字"))
count = 0
for x in  range(1,num):
    if x % 2 == 0:
        count += 1
print(f"{count}")



# for循环的变量作用域
# 变量的定义在循环内和循环外,有明显区别,应注意

for i in range(1,5):
    print(i)
print(' -------------------')
print(i) # i变量变黄,说明i是临时变量,并不那么规范,但是可以使用
print(' -------------------')

t =0
for t in range(1,5):
    print(t)
print(' -------------------')
print(t)
print(' -------------------')


# for 嵌套循环
# 距离毕业多少天,每天学习多少小时?
for i in range(1,10):
    print(f"今天是{i}天")
    for study_time in range(1,5):
         print (f"今天学习了{study_time}小时",end ="")
    print("--------------")

print("每天都要努力呀")



# 使用for循环输出九九乘法表
# 注意 i 和 j 哪个是内?哪个是外

for i in range(1,10):

    for j in range(1,10):
        if i >= j:
            print(f"\t{j}*{i}={i*j}",end="")
    print("\t")

# for循环九九乘法表 示例
for i in range(1,10):
    for j in  range(1,i+1):
        print(f"\t{j}*{i}={i * j}", end="")
    print()


# continue 中断本次循环,直接进入下一次,for 和 while 作用一致
# break 直接中断所有循环
# 对于嵌套,只管当前循环内

for i in range(1,10):
    if i == 5:
        continue
    print(f"{i}")
print("---------------------")
for i in range(1,10):
    if i == 5:
        break
    print(f"{i}")
    

# 使用for,if 和 while 循环
# 先找打断和终止部分,从这部分设立条件

money = 15238

for num in range(1,31):

    import random
    performance = random.randint(1,10)

    if performance < 5:
        print(f"\t员工{num}号,绩效分数{performance}不足,不发奖金")
        continue
    if money >= 998:
        money -= 998
        print(f"\t员工{num}号,绩效分数{performance},发放奖金998元,当前账户余额{money}元")
    else:
        print(f"\t当前账户余额{money}元,奖金下次再发")
        break
    print("",end ="")
print("======================")

# 课堂答案

money = 15233
count = 0
for num in range(1,31):

    import random
    performance = random.randint(1,10)

    if performance < 5:
        print(f"\t员工{num}号,绩效分数{performance}不足,不发工资")
        continue
    if money >=  986:
        money -= 986
        print(f"\t员工{num}号,绩效分数{performance},发放工资986元,公司账户余额剩余{money}元")
    else:
        print(f"\t余额不足,当前余额:{money}元,无法继续发放工资")
        break
    print("",end ="")
print("======================")

# 自己写的另外一种
money = 15238

for num in range(1,31):

    import random
    performance = random.randint(1,10)

    if performance >= 5:
        money -= 998
        print(f"\t员工{num}号,绩效分数{performance}超额,发奖金998,当前账户余额{money}元")
        continue
    if money < 998:
        print(f"当前余额不足:{money}元,余额不足")
        break
    else:
        print(f"\t员工{num}号,绩效分数{performance}不足,不发奖金,当前账户余额{money}元")
    print("",end ="")
print("======================")


总结

if 、while 、for 循环,这三个循环还是比较好玩的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值