【10月更文挑战第6天】
1.比较运算符|运算符|描述|例子|
|-|-|-|
|==|比较两个对象是否相等|1==2|
|≠|比较两个对象是否不相等|1≠2|
|>|大于(大小比较)|1>2|
|<|小于(大小比较)|1<2|
|≥|大于等于(大小比较)|1≥2|
|≤|小于等于(大小比较)|1≤2|
#=赋值
#==比较是否相等
print('1'==1)##我们在打印之前会进行判断,然后将表达式判断结果打印出来
#打印出False 那么这里就是不相等的
print(1==1)#打印出True
#!=比较是否不相等
print('1'!=1)#打印False
#大于>
print(2>3)#False
#小于<
print(2<3)#True
#大于等于>=
print(3>=2)#True
#小于等于<=
print(2<=3)#True
判断
单条件判断,我们就需要用到if
程序的正常执行流程是从上往下依次执行
我们可以使用流程控制语句中的if语句来根据不同的情况执行不同的代码
单个条件的判断使用if关键字
两个条件使用if...else
多个条件使用if...elif...else
if关键字判断后面的条件,如果为真,就进行下面代码的编译
如果为假,那么就直接跳过这串代码运行后面的代码
格式:if 判断条件:
这里的格式一定要有冒号
然后直接换行
如果没有冒号的话,那么这个代码就是错的
我们在写下if条件语句后回车会出现一个缩进,大小为一个Tab键
然后我们就写下我们的代码
那么我们写下的这个代码就是属于这个if条件语句的
如果条件为真,那么我们就运行这个条件语句里面的代码
但是如果条件是假的话,那么我们就不运行这个代码
if条件语句的用法:
#输入用户名,判断用户名是否正确
name=input("请输入用户名")
if name=="huyunkai":
print("输入正确")
上面的if是条件成立的情况
那么如果不成立呢?
那我们就用else
加上els:
#输入用户名,判断用户名是否正确
name=input("请输入用户名")
if name=="huyunkai":
print("输入正确")
else:
print("输入错误")
如果我们的条件不满足的话,那么编译器就会调用else里面的代码的
用户输入数学成绩,判断成绩是否及格(60分及以上为及格)
#用户输入数学成绩,判断成绩是否及格(60分及以上为及格)
score=eval(input("请输入成绩"))#我们不能直接将我们输入的变量拿来比较,我们需要进行类型转换的操作
if score>=60:
print("成绩及格")#判断条件成立时执行的代码
else:
print("成绩不及格")#判断条件不成立时执行的代码
当我们遇到多条件判断的时候
那么我们就要用到elif
这个elif是可以出现多个的
多种情况之下的写法:
#判断时有多个情况,那么我们就会使用到elif
#只要if的条件为真的话,那么我们就不会执行后面的条件语句的
score=eval(input("请输入你的成绩"))
if 90<=score<=100:
print("成绩优秀")
elif 80<=score<=89:
print("成绩良好")
elif 70<=score<=79:
print("成绩中等")
elif 60<=score<=69:
print("成绩及格")
else :
print("成绩不及格")
三目运算
格式:表达式1 if 条件表达式 else 表达式2
作用:当条件表达式成立,返回结果是表达式1
否则返回结果就是表达式2
三目运算可以想成是 if else的缩写
就是将条件内的代码放到前面和后面
效果是一样的
三目运算的使用:
name=input("请输入用户名")
code =input("请输入密码")
#表达式 if name=="huyunkai"and code=="1234" else 表达式
print("登录成功") if name=="huyunkai"and code=="1234" else print("登录失败")
我们是可以先写判断的条件
再在这个条件的前后将判断后的代码写上
3 if 3>2 else2
逻辑运算
逻辑与 and
两个条件都得为真才会返回真
如果第一个条件为假的话,那么这个直接返回假,就不会进行后面真假的判断了
and的使用:
#编辑模式
print(True and False)
print(True and True)
print(False and True)
#交互模式
False
True
False
第一个判断是假的的话,那么直接返回假,不用判断后面的
如果两个都是真的话,那么都是真
如果两个判断有一个是假的,那么总体的话就是假的
逻辑或 or
两个条件中有一个成立的,那么结果就是True
如果两个条件都不成立,那么结果就是False
逻辑或的使用:
#编辑模式
print(True or False)
print(True or True)
print(False or True)
print(False or False)
#交互模式
True
True
True
False
逻辑非not
not主要用于进行取反的
逻辑非进行取反:
#编辑模式
print(not False)
print(not True)
#交互模式
True
False
逻辑短路
逻辑运算过程中,如果已经能够得到最后的值,则不会再进行后面的判断,这个称为逻辑短路
在存在逻辑或or的语句中
我们仅仅判断了第一个表达式,但是or后面的第二个表达式我们并未进行判断,但是此时我们已经将结果进行了返回了
那么这种情况就是逻辑短板了
逻辑短板的情况概述:
a=1
print(a<2 or b>2)
#我们这里是没有定义b的,但是我们在程序运行的时候没有进行报错
#我们这里用的是逻辑或or
#执行的顺序是从左边到右边
#先判断的是a<2 那么带入a就是成立的
#那么or就不会去执行b>2
print(a<2 and b>2)
#这里就会报错了,说b没有进行定义
回顾题目
100-90优秀
89-80良好
79-70中等
69-60及格
60-0不及格
##判断时有多个情况,那么我们就会使用到elif
##只要if的条件为真的话,那么我们就不会执行后面的条件语句的
score=eval(input("请输入你的成绩"))
if score>=90 and score<=100:
print("成绩优秀")
elif score>=80 and score<=89:
print("成绩良好")
elif score>=70 and score<=79:
print("成绩中等")
elif score>=60 and score<=69:
print("成绩及格")
else :
print("成绩不及格")
登录问题
1.输入用户名、密码
2.判断用户名、密码是否正确
正确:登录成功
不正确:提示用户名或者密码输入错误
#登录操作
'''
1.输入用户名、密码
2.判断用户名、密码是否正确
正确:登录成功
不正确:提示用户名或者密码输入错误
'''
name=input("请输入用户名")
code =input("请输入密码")
if name=="huhu" and code=="123456":
print("登录成功")
else:
print("登录失败")
if嵌套
就是外层if内的代码还有层if
#先判断用户名,再判断密码
name=input("请输入用户名")
code =input("请输入密码")
if name=="xiaoming":
if code=="1234":
print("登录成功")
else:
print("密码输入错误")
else:
print("用户名输入错误")
通过这种方式我们能知道是用户名错误还是密码错误
if嵌套一般适用于满足某个情况下又要进行另外一种情况的判断
注意:每个if和else是要进行对应的
尽量不要嵌套太深了
因为可能我们考虑不齐全
有些条件没写到位
男女赛跑题目:
#男女分组赛跑
#男子小于10秒进决赛,女子小于15进决赛
sex=input("请输入性别")
if sex=="女":
print("女子组")
time=eval(input("请输入赛跑时间"))
if time<15:
print("进入决赛")
else:
print("没有进入决赛")
elif sex=="男":
print("男子组")
time=eval(input("请输入赛跑时间"))
if time<10:
print("进入决赛")
else:
print("没有进入决赛")
else:
print("信息错误")
#除了if嵌套,我们还能使用if和and进行判断