Python流程控制语句
1.布尔类型和比较运算符
(1)布尔类型(bool)字面量:True、False
(2)比较运算符:
2.if语句
(1)if语法:
if 要判断的条件:
条件成立时,要做的事情(python是通过空格缩进判断归属,这句话前面实际有四个空格)
样例代码:
age = 29
if age >= 18:print(f"年龄{age}岁,已经成年啦!")
(2)注意:
判断条件一定要是布尔类型;
不要忘记判断条件后的冒号;
归属于if语句的代码块,通过4个空格判断归属。
(3)if...elif...else完整语法:
if 条件1:
条件1满足应该做的事情
elif 条件2:
条件2满足应该做的事情
elif 条件3:
条件3满足应该做的事情
else:
所有条件都不满足应该做的事情
代码示例:
print("欢迎来到儿童游乐场。")
age = input("请输入你的年龄:")
if int(age) >= 18:print("您已成年,游玩需要补票10元。")
elif int(age) < 18:print("您未成年,游玩免费")
elif int(age) > 60:print("您已退休,游玩免费")
else:print("请付费游玩。")
print("祝您游玩愉快。")
3.while循环
(1)while循环语法:
while 条件:
条件满足时,做的事情
...
案例:
i = 0
while i < 100:print("我爱kyy")# 终止条件i += 1
(2)注意:
条件需要是布尔类型;
需要设置循环终止条件,否则将无限循环
猜数字游戏案例:
import randomnum = random.randint(1, 100)
flag = True
while flag:guess_num = int(input("请输入您猜的数字:"))if guess_num == num:print("恭喜你,猜对了!")flag = Falseelif guess_num > num:print("您猜的数字大了")else:print("您猜的数字小了")print("猜数字游戏结束!")
4.for循环
(1)for循环语法:
for 临时变量 in 待处理数据集(序列):
循环满足条件时执行的代码
注意:上面的序列包含的数据类型包括 字符串、列表、元祖等。
(2)range语句:
语法1:range(num)
如:range(5) 取的数据集是:[0,1,2,3,4]
语法2:range(num1,num2)
如:range(5,10)取的数据集是:[5,6,7,8,9]
语法3:range(num1,num2,step) step为步长,默认为1
如:range(5,10,2) 取的数据集是:[5,7,9]
示例:
# for循环中的临时变量x的作用域规范内只允许在循环内使用,但是循环外也可以访问到不建议这么做
for x range(5, 10, 2):print(x)print(x)# 输出结果如下
5
7
9
9
5.循环中断continue和break
continue:中断本次循环,直接进入下一次循环
break:直接结束循环
6.循环综合案例
某公司,账户余额10000元,给20名员工发工资。
员工编号从1到20,没人可以领取1000元
领取工资时,绩效(1-10随机生成)如果低于5不发工资,换下一位
如果工资发完了,结束发工资。
import randomaccount = 10000for i in range(1, 21):ji_xiao = random.randint(1, 10)if ji_xiao < 5:print(f"员工{i},绩效分{ji_xiao},低于5,不发工资,下一位。")continueelse:if account > 0:account -= 1000print(f"员工{i},绩效分{ji_xiao},发放工资1000元,账户余额:{account}元。")else:print("工资发完了,下个月领取吧。")break# 输出结果如下
员工1,绩效分10,发放工资1000元,账户余额:9000元。
员工2,绩效分2,低于5,不发工资,下一位。
员工3,绩效分9,发放工资1000元,账户余额:8000元。
员工4,绩效分9,发放工资1000元,账户余额:7000元。
员工5,绩效分6,发放工资1000元,账户余额:6000元。
员工6,绩效分7,发放工资1000元,账户余额:5000元。
员工7,绩效分7,发放工资1000元,账户余额:4000元。
员工8,绩效分4,低于5,不发工资,下一位。
员工9,绩效分6,发放工资1000元,账户余额:3000元。
员工10,绩效分5,发放工资1000元,账户余额:2000元。
员工11,绩效分2,低于5,不发工资,下一位。
员工12,绩效分2,低于5,不发工资,下一位。
员工13,绩效分4,低于5,不发工资,下一位。
员工14,绩效分7,发放工资1000元,账户余额:1000元。
员工15,绩效分10,发放工资1000元,账户余额:0元。
工资发完了,下个月领取吧。