1.比较运算符
a = 2
b = 2
c = 3
# == : 判断两个变量是否相等
print(a == b) # True
print(a == c) # False
print(6 == 6)
print('hhh' == 'hhh')
# != : 判断两个变量的值是否不相等
print(a != c)
print('hhh' != 'fff') # True
print('hhh' != 'hhh') # False
# >大于 <小于 >= 大于等于 <= 小于等于
print(4 > 2) # True
print(2 > 4) # False
# 小于
print(2 < 4) # True
# 大于等于
print(5 >= 2)
print(5 >= 5)
# 小于等于
print(2 <= 2)
print(3 <= 1) # False
2.逻辑运算符
# 逻辑运算符
# and: 是左右两边都要符合才为真, 都真才真,一假则假
print(2 > 1)
print(3 > 2)
print(2 > 1 and 3 > 2)
print(2 < 1 and 3 > 2) # False
# or: 左右两边只要有一边符合就为真, 一真则真,都假则假
print(2 > 1 or 3 > 2) # True
print(3 < 2)
print(2 > 1 or 3 < 2) # True
print(2 < 1 or 3 < 2) # False
# not: 表示相反的结果, 你为真我为假,你为假我为真
print(2 > 1)
print(not 2 > 1) # False
print(not 4 < 2) # True
3.if 判断
# 命令逻辑:如果....就.....
# 语法:
# if 要判断的条件:
# 条件成立时,要做的事情
# if判断语句的作用:当满足一定条件时才会执行代码块语句,否则就不执行代码块语句。
# 应用场景:网吧上网,如果用户年龄大于等于18岁,即成年,输出”已经成年,可以上网”
age = 22 # 定义变量保存的年龄
# 判断年龄是否大于等于18
if age >= 18:
# if后面是条件,条件成立执行的是缩进下面的代码块
print('已经成年,可以上网了') # 符合条件才会打印数据,不符合条件不打印
# 注意:在程序中不加缩进的代码是不属于if语句块,因为不加缩进的代码的执行和条件成立无关
print('退出系统')
3.1 if...else...
# 作用:条件成立执行if下方的代码,条件不成立执行else下方的代码
# 使用格式:
# if 条件:
# 满足条件时要做的事情
# else:
# 不满足条件时要做的事情
# 应用场景:网吧上网,键盘输入用户的年龄,
# 如果用户年龄大于等于18岁,即成年,输出”已经成年,可以上网”
# 未成年, 温馨提示:年龄不符合,请回去好好学习
# age = int(input('请输入您的年龄:')) # input接收的是字符串类型
# # 判断输入的年龄是否大于等于18
# if age >= 18:
# print(f'您的年龄是{age}, 已经成年,可以上网了')
# else:
# print(f'您的年龄是{age}, 温馨提示:年龄不符合,请回去好好学习')
# TypeError: '>=' not supported between instances of 'str' and 'int'
# 报错解释:类型错误 '123' >= 123
# 用户登录验证
# 正确的用户名和密码
user_name = 'susu'
pword = 'abc123'
# 用户输入用户名和密码
uname = input('请输入您的姓名:')
upassword = input('请输入您的密码:')
# 判断用户名和密码是否匹配
if uname == user_name and password == upassword:
print('可以打游戏了....')
else:
print('登录失败,请检查用户名和密码是否正确')
# if...else作用:条件成立执行if下方的代码,条件不成立执行else下方的代码
print('123' == 123) # False '123'字符串类型 123是整数类型
3.2 if...elif...else (多重判断)
# 应用场景:中国合法工作年龄为18-60岁,即如果年龄小于18的情况为童工,
# 不合法;如果年龄在18-60岁之间为合法工龄;大于60岁为法定退休年龄
'''
if 条件1:
满足条件1时要做的事情
elif 条件2:
满足条件2时要做的事情
elif 条件3:
满足条件3时要做的事情
.......
else:
以上条件都不成立执行的代码
'''
'''
题目分析:
按年龄分为:童工:小于18 合法年龄: 18-60 退休年龄: 大于60
1、用户输入自己的年龄 --> 类型转换
2、if判断 小于18 elif判断 18-60之间 else 退休年龄
3、输出提示消息: 您输入的年龄是xxx, 合法与否
'''
age = int(input('请输入您的年龄:'))
# 童工
if age < 18:
print(f'您输入的年龄是{age}, 年龄不合法')
# elif判断 18-60之间
elif 18 <= age <= 60: # 年龄小于等于18小于等于60 # age >= 18 and age <= 60
print(f'您输入的年龄是{age}, 年龄合法')
else:
print(f'您输入的年龄是{age},退休年龄')
# 注意:elif和else的区别
# 1、elif后面接收条件,else后面是不接收条件的
# 2、两种情况以上使用elif, 两种条件情况以下使用else
# 总结:if 是单个条件的判断,
# if...else... 是两个/双重条件的判断
# if...elif...elif...else...多个条件的条件
3.3 if 嵌套(可构成一个简单的循环)
# 应用场景:过节买票回家:
# 如果有票就可以进站,没票不可以进站;
# 进站后还需要过安检,安检没有问题,可以进去等待坐车,
# 如果安检有问题,就要留下查看,怎么书写程序?
# 需求:1. 条件1(判断是否有车票)如果有票就可以进站,没有票不可以进站
# 2. 进站之后的条件(判断是否有违禁物品) 如果有没收违禁物品, 没有就进去等待坐车
fare = 1 # 0表示无车票, 1表示有车票
risk = 0 # 0表示没有违禁物品, 1表示有违禁物品
if fare == 1:
print('可以进站了')
if risk == 0:
print('通过安检,进去休息一下吧')
else:
print('有违禁物品,没收违禁物品!!!')
else:
print('温馨提示:请买票!')