语法
while 条件:
条件成立时,执行的逻辑代码
....
练习:表白100次,100次后成功
i = 0
while i < 100:
print("I love you!")
i += 1
i = 0
sum = 0
while i<=100:
sum += i
i += 1
print(f"1-100累加的和是:{sum}")
设置一个范围1-100的随机整数变量,通过while循环,配合input语句,判断输入的数字是否等于随机数
import random
num = random.randint(1,100)
isTrue = True
count = 0
while isTrue:
guessNum = int(input("请输入您猜测的数字:"));
count += 1
if guessNum > num:
print("猜大了,请继续")
elif guessNum < num:
print("猜小了,请继续")
else:
isTrue = False
print(f"猜对了,你猜了{count}次")
语法
while 条件1:
条件1满足时,执行的逻辑代码...
while 条件2:
条件2满足时,执行的逻辑代码...
练习:表白100天,且每天都会送10朵玫瑰花
# 表白100天,并每天10支玫瑰花
i = 1
while i <= 100:
print(f"今天是第{i}天,准备表白!")
j = 1
while j <= 10:
print(f"送的第{j}朵玫瑰花")
j += 1
print("表白!")
i += 1
print(f"表白{i-1}天,表白成功")
print("Hello",end='')
print("World",end='')
补充—制表符"\t"
练习:打印九九乘法表
i = 0
while i < 9:
i += 1
j = 1
while j <= i:
print(f"{i} * {j} = {i*j}",end='\t')
j += 1
print("")
for 临时变量 in 待处理数据集
循环满足条件时,执行的逻辑代码...
name = "mahaonan"
for i in name:
# 将name的内容,挨个取出赋值给临时变量i
print(i)
# 2.
name = "itheima is a brand of itcast"
count = 0
for i in name:
if i == 'a':
count += 1
print(f"{name}中公函有:{count}个字母a")
可迭代类型:其内容可以一个一个依次取出的一种类型
range语句
语法1
# range 语法1 range(num):从0-num,间隔为1递增
for i in range(10):
print(i,end='\t')
print()
语法2
# range 语法2 range(num1,num2):从num1-num2,间隔为1递增——包前不包后
for i in range(5,10):
print(i,end="\t")
语法3
# range 语法3 range(num1,num2,setp):从num1-num2,间隔为step(默认为1)——包前不包后
for i in range(5,10,2):
print(i,end="\t")
练习:偶数有几个
num = 100
count = 0
for i in range(1,num):
if i%2 == 0:
count += 1
print(f"1-{num}(不含{num}本身)范围内,有{count}个偶数")
如果需要在循环外部访问循环内的临时变量,可以在循环外预先定义
由于i变量是在循环之前定义的,所以在循环外访问i变量是合理、允许的
语法
for 临时变量 in 待处理数据集
循环满足条件时,执行的逻辑代码...
for 临时变量 in 待处理数据集
满足循环条件是,执行的逻辑代码...
练习:表白100天,每天送10朵花,并访问临时变量,输出最后一天表白成功
i = 0
for i in range(1,101):
print(f"今天是第{i}天,准备表白!")
for j in range(1,11):
print(f"送出的第{j}朵玫瑰花")
print("表白!")
print(f"表白的第{i}天,表白成功!")
for i in range(1,10):
for j in range (1,(i+1)):
print(f"{j} * {i} = {j*i}",end='\t')
print()
与Java一致
import random
account = 10000
for i in range(1,21):
if account < 1000:
print("工资发完了,下个月领取吧")
break
score = random.randint(1, 10)
if score < 5:
print(f"员工{i},绩效分{score},低于5,不发工资,下一位")
continue
account -= 1000
print(f"向员工{i}发放工资1000元,账户余额还剩余{account}元")