【Python学习分享文章】_if(条件语句)_logicalJudgement介绍及基本操作
综述
计算机的“条件语句”和生活中的“条件成立”是不一样的。
一个生活中的例子如果被计算机执行则是如下段子:老婆让程序员老公去买苹果,说:“去水果店买5个苹果,如果碰到卖西瓜的就买一个。”
然后后来老公碰到了卖西瓜的,回来就只买了1个苹果。
也就是说,计算机的条件永远以“前提条件”为判断,执行的也是给定的操作,而想生活中一些操作是被隐藏的,上述例子转化为类似程序的表达就是如果碰到买西瓜的就再多买一个西瓜,苹果数量不变。
if语句 整体框架
if 判断的真假的判断句,常见为大于、等于等:
如果判断为“真”则执行这里的代码
elif 如果上述为“假”,则判断这里的“真假”情况:
如果上述判断为“真”则执行这里的代码
else:
如果前面所有的判断都不成立,则执行这里编写的代码
注释1:上面的“:”为英文的符号,是语句的必要成分,缺省则会报错。
注释2:elif 可以有很多,也可以没有;else 可以没有,如果没有,if 、 elif 判断均为“假”,则条件语句什么都不执行
翻译成中文的意思就是:
判断 if 里面的条件是否为真:
如果是“真”,则执行条件语句结束,后面的不会执行;
如果为“假”,此处不执行,向下执行;
如果后面没有内容了,则也结束 if语句
判断 elif 里面的条件是否为真:
内容和上面一样
else:
如果上面的判断语句都不成立,则最后确定执行这里的代码,这里执行完,这一个 if语句 就真的全部结束了。
例子
例子1:
【重点!】:判断是够相等,不是数学里面的“=”(计算机里面是“赋值”的意思),而是“==”,因为不能用“=”了的缘故,别问为什么,记住就好。
x = 'abc'
if x == 'abc': # 这里的结果为 True,所以执行下面的输出命令
print("x的内容和判断的内容相同")
# the result is:
x的内容和判断的内容相同
例子2:
多个判断分支:
a_list = ['123', 'abc']
a = 'ab'
if a==a_list[0]: # ‘ab’ 和 ‘123’ 是不同的字符数据,判断为 False,不执行
print("a 是 list 里面的第一个内容")
elif a==a_list[1]: # ‘ab’ 和 ‘abc’ 是不同的字符数据,判断为 False,不执行
print("a 是 list 里面的第二个内容")
else: # 上述都没有执行,则执行这里的内容
print("list 里面不存在 a 代表的内容")
# 其实上述可以直接用 in 的判断语句即可一步搞定,但是为了说明 if语句,所以繁琐化了。
# the result is:
list 里面不存在 a 代表的内容
例子3:
一个简单的demo:
# 记录生肖,根据年份来判断生肖,输出对应生肖的“想表达的内容”
chinese_zodiac = '猴鸡狗猪鼠牛虎兔龙蛇马羊' # 固定的生肖字符串,因为 0年 并不是鼠年,所以顺序改变了
year = int(input('输入出生年份:')) # 增加 int() 是因为输入的数据会当作 str 数据,str 数据是不能用来计算的
if chinese_zodiac[year % 12] == '鸡':
print("鸡年的运势是什么什么内容,这里实在不想编下去了,不信这个")
else:
print("此程序暂时只能给出鸡年的运势,其他的生肖暂时无法解决")
# the result is:
输入出生年份:2018
此程序暂时只能给出鸡年的运势,其他的生肖暂时无法解决
注:
个人微信公众号:codeAndWrite