python之循环

Python的使用之循环

循环是程序设计语言中反复执行某些代码的一种计算机处理过程,常见的有按照次数循环和按照条件循环。

while循环

语法:

while(循环条件):
	循环体

示例1 猜数字

import random
ans = random.randint(1, 100)  # 生成1-100之间的随机数
print(ans)
i = 1
num = int(input("请输入要猜的数值:"))
while(ans != num):
    if(num > ans):
        print("猜得数字太大了")
    else:
        print("猜的数字太小了")
    i = i + 1
    num = int(input(f"请输入第{i}次猜的数值:"))
    if(num == ans):
        break
print("猜对了!!!!")
print(f"恭喜第{i}次就猜对了")

示例2 九九乘法表

# 外循环控制变量
i = 1
while(i <= 9):
    # 内循环控制变量
    j = 1
    while(j <= i):
        # print会自动换行,加上end解决
        print(f"{j}*{i}={i*j}\t", end="")
        j += 1
    i += 1
    # print 语句会自动换行
    print()

for 循环

for循环与while循环的功能基本上差不多,但是仍有一些区别:

  • while循环的循环条件是自定义的,自行控制循环条件
  • for循环是一种**“轮询”机制,是对一批内容进行“逐个处理”**

for 循环语法

for 临时变量 in 待处理数据集:
	循环满足条件时执行的代码
遍历字符串
# 定义字符串
name = "hello world!"
for x in name:
	# 将name的内容,挨个取出赋予x临时变量
	# 就可以在循环体内对x进行处理
	print(x)

for循环无法定义循环条件,只能被动取出数据处理

数一数有几个a
str = "abcdeadjkjiakdjaeiaajeifjla"
count = 0
for x in str:
    if(x == 'a'):
        count += 1

print(f"一共有{count}个a字母")

range语句

for循环语句,本质上是便利:序列类型
通过学习range语句,获得一个简单的数字序列

语法1:

range(num)
#获取一个从0开始,到num结束但是不包含num的数值序列,左闭右开

range(5)  #[0,1,2,3,4]

语法2:

range(num1,num2)
# 从num1开始到num2的数字序列,但是不包含num2本身
range(5, 10) # [5, 6, 7, 8, 9]

语法3:

range(num1, num2, step)
# 从num1开始,到num2结束,但是不包括num2本身,步长为step,默认为1
range(5,10,2) #[5, 7, 9]

for循环打印九九乘法表

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

break与continue

  • break:跳出循环,直接结束所在的循环。
  • continue:结束本次循环,开启下一次循环,且只能用于循环中。
  • 在嵌套循环中,只有在本次循环中才有作用

综合测试

"""
公司有20名员工,从1-20,依次领取工资,没人可以领取1000元,公司账户余额1W元
领工资时,财务判断员工的绩效分(1-10)【随机生成】,如果低于5,不发工资,换下一位
如果工资发完了,结束发工资。
"""

import random
money = 10000
for i in range(1, 21):
    x = random.randint(1, 10)
    if(x < 5):
        print(f"员工{i},绩效{x},低于5,不发工资,下一位")
        continue

    print(f"向员工{i}发放工资1000元,账户余额还剩{money-1000}")
    money -= 1000
    if (money == 0):
        print("工资发完了,下个月领取吧")
        break


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值