一、语法
if 条件:
条件成⽴执⾏的代码1
条件成⽴执⾏的代码2
…
if True:
print('条件成立执行的代码1')
print('条件成立执行的代码2')
# 注意:在这个下方的没有加缩进的代码,不属于if语句块,即和条件成立与否无关
print('这个代码执行吗?')
二、实例
网吧上网
2.1 简单版
# 分析:年龄大于等于18,输出:已经成年,可以上网 -- 准备年龄的数据 和 18 做比较
age = 20
if age >= 18:
print('已经成年,可以上网')
print("系统关闭")
2.2 进阶版
# 系统可以用户输入年龄,用这个年龄做条件判断
"""
1. 用户输入
2. 保存用户输入的年龄
3. if
***** 注意一个点: input接收到的数据是str, 不能和18做判断 -- int转换类型
"""
age = int(input("请输入您的年龄:"))
if age >= 20:
print(f'您输入的年龄是{age},可以上网')
print("系统关闭")
2.3 实用版
if 条件:
条件成⽴执⾏的代码1
条件成⽴执⾏的代码2
…
else:
条件不成⽴执⾏的代码1
条件不成⽴执⾏的代码2
…
# 系统可以用户输入年龄,用这个年龄做条件判断
"""
1. 用户输入
2. 保存用户输入的年龄
3. if
***** 注意一个点: input接收到的数据是str, 不能和18做判断 -- int转换类型
"""
age = int(input('请输入您的年龄:'))
if age >= 18:
print(f'您输入的年龄是{age}, 已经成年,可以上网')
else:
print(f'您输入的年龄是{age},小朋友,回家写作业去')
三、多重判断
3.1 语法规则
if 条件1:
条件1成⽴执⾏的代码1
条件1成⽴执⾏的代码2
......
elif 条件2:
条件2成⽴执⾏的代码1
条件2成⽴执⾏的代码2
......
......
else:
以上条件都不成⽴执⾏执⾏的代码
3.2 实例
"""
需求:
如果年龄小于18,为童工,不合法;
如果年龄18-60岁之间,为合法工作年龄
如果年龄大于60为退休年龄
"""
"""
步骤:
1. 用户输入自己的年龄, 保存变量 -- str;
2. if做判断 elif
3. 输出提示信息:您输入的年龄是x,合法与否
"""
age = int(input('请输入您的年龄:')) #int进行转字符
# 童工
if age < 18:
print(f'您输入的年龄是{age}, 童工')
# 18-60 合法
elif (age >= 18) and (age <= 60):
print(f'您输入的年龄是{age}, 合法')
elif 18 <= age <= 60:
print(f'您输入的年龄是{age}, 合法')
# 大于60 退休
elif age > 60:
print(f'您输入的年龄是{age}, 退休年龄')
四、if嵌套
4.1 语法规则
if 条件1:
条件1成⽴执⾏的代码
条件1成⽴执⾏的代码
if 条件2:
条件2成⽴执⾏的代码
条件2成⽴执⾏的代码
4.2 实例
# 坐公交:如果有钱可以上车,没有钱,不能上车; 如果上车了,判断是否能坐下 -- 是否有空座位
"""
1. 准备将来要做判断的数据:钱和空座
2. 判断是否有钱:上车 和 不能上车
3. 上车了: 判断是否能坐下: 有空座位 和 无空座位
"""
money = 1
seat = 1
if money == 1:
print('请上车')
if seat == 1:
print('请坐下')
else:
print('请坐下')
else:
print('不能上车')
五、随机数
1、导出random模块:import random
2、使用random模块中的随机整数功能:random.randint(开始,结束)
"""
步骤
1. 导入模块
import random
2. 使用这个模块中的功能
random.randint()
"""
import random
num = random.randint(0, 2)
print(num)
猜拳游戏
"""
1. 出拳
玩家:手动输入
电脑:1. 固定:剪刀;2. 随机
2. 判断输赢
2.1 玩家获胜
2.2 平局
2.3 电脑获胜
"""
import random
# 1. 出拳
# 玩家
player = int(input('请出拳:0--石头;1--剪刀;2--布:'))
# 电脑
# computer = 1
computer = random.randint(0, 2) #randint 产生的随机数是在指定的某个区间内的一个值,包括左右两端,随机的是整数
# print(computer)
# 2. 判断输赢
# 玩家获胜
if ((player == 0) and (computer == 1)) or ((player == 1) and (computer == 2)) or ((player == 2) and (computer == 0)):
print('玩家获胜,哈哈哈哈')
# 平局
elif player == computer:
print('平局,别走,再来一局')
else:
print('电脑获胜')
六、三目运算符
条件成⽴执⾏的表达式 if 条件 else 条件不成⽴执⾏的表达式
"""
语法
条件成立执行的表达式 if 条件 else 条件不成立执行的表达式
"""
a = 1
b = 2
c = a if a > b else b
print(c)
# 需求: 有两个变量,比较大小 如果变量1 大于 变量2 执行 变量 1 - 变量2; 否则 变量2 - 变量1
aa = 10
bb = 6
cc = aa - bb if aa > bb else bb - aa
print(cc)