上QQ阅读APP看书,第一时间看更新
3.3 条件表达式
在开发程序时,经常会根据表达式的结果有条件地进行赋值。例如,要返回两个数中较大的数,可以使用下面的if语句:
01 a = 10 02 b = 6 03 if a>b: 04 r = a 05 else: 06 r = b
上述代码可以使用条件表达式进行简化,代码如下:
01 a = 10 02 b = 6 03 r = a if a > b else b
使用条件表达式时,先计算中间的条件(a>b),如果结果为True,则返回if语句左边的值,否则返回else右边的值。例如,上述表达式的结果,即r的值为10。
【例3.5】使用条件表达式判断是否为闰年。(实例位置:资源包\TM\sl\03\05)
在IDLE中创建一个名称为leapyear.py的文件,然后在该文件中定义一个保存要判断的年份的变量,接着应用条件表达式判断该年份是否为闰年,最后输出判断结果,代码如下:
01 year = 2024 # 年份 02 result = "是闰年" if (year%4==0 and year % 100 !=0) or (year%400 == 0) else "不是闰年" 03 print("\n"+str(year) + "年" + result + "!") # 输出结果
运行上述代码,将显示如图3.16所示的运行结果。
图3.16 判断是否为闰年的结果
说明
判断一个年份是否为闰年的条件是,能被4整除,但不能被100整除,或者能被400整除。