1、3.1 条件表达式 在选择结构和循环结构中,要根据条件表达式的值来确定下一步的执行流程。条件表达式的值只要不是 False、0(或 0.0、0j 等)、空值None、空列表、空元组、空集合、空字典、空字符串、空 range 对象或其他空迭代对象,Python 解释器就认为与 True 等价。从这个意义上来说,所有的 Python 合法表达式都可以作为条件表达式。23.2 单分支选择结构if 条件表达式:语句块33.2 单分支选择结构 例例 3-1 编写程序,输入两个整数,按从小到大的顺序输出。x=input(Input two numbers:)a,b=map(int,x.split()if
2、a b:a,b=b,aprint(a,b)43.3 双分支选择结构if 条件表达式:语句块1else:语句块253.3 双分支选择结构 例例 3-2 编写程序求解鸡兔同笼问题,输入鸡和兔子的总数及腿的数量,输出鸡和兔子分别有多少只。heads,legs=map(int,input(请输入鸡兔总数和腿总数:).split()rabbit=(legs-heads*2)/2chicken=heads-rabbitif rabbit=0 and chicken=0 and int(rabbit)=rabbit:print(鸡:0,兔:1.format(int(chicken),int(rabbit)e
3、lse:print(数据不正确)63.4 嵌套的选择结构if 条件表达式1:语句块1elif 条件表达式2:语句块2elif 条件表达式3:语句块3.else:语句块n73.4 嵌套的选择结构 例例3-3 编写程序,输入一个0到100之间的整数表示成绩,然后转换为字母等级制成绩。score=int(input(请输入一个成绩:)if score 100 or score=90:print(A)elif score=80:print(B)elif score=70:print(C)elif score=60:print(D)else:print(F)83.4 嵌套的选择结构if 表达式1:语句块
4、1 if 表达式2:语句块2 else:语句块3else:if 表达式4:语句块493.4 嵌套的选择结构 例例3-4 使用第二种形式的嵌套选择结构重做例3-3。score=int(input(请输入一个成绩:)degree=DCBAAFif score 100 or score=0:print(degreeindex)else:print(degree-1)103.5 精彩例题分析与解答 例例3-5 编写程序,判断点与直线的关系。k=float(input(请输入直线斜率:)b=float(input(请输入直线截距:)pointX=float(input(请输入点的x坐标:)pointY=
5、float(input(请输入点的y坐标:)y=k*pointX+bprint(Result.center(20,=)if pointY=y:print(in the line.)elif pointY y:print(above the line.)else:print(below the line.)113.5 精彩例题分析与解答 例例3-6 编写程序,判断今天是今年的第几天。import timedate=time.localtime()#获取当前日期时间year,month,day=date:3day_month=31,28,31,30,31,30,31,31,30,31,30,31i
6、f year%400=0 or(year%4=0 and year%100!=0):#判断是否为闰年 day_month1=29if month=1:print(day)else:print(sum(day_month:month-1)+day)123.5 精彩例题分析与解答 例例3-7 计算出租车费用。假设某城市的出租车按下面的方法进行计费:3km内(不含3km)起步价10元,37km(不含7km)按1.6元/km计费,不足1km按1km计费,7km之后按2.4元/km计费,不足1km按1km计费。编写程序,输入行驶的路程(以km为单位),然后输出出租车费用。133.5 精彩例题分析与解答distance=int(float(input(请输入路程(公里):)if distance3:fee=10elif distance=0:y=x*2-1else:y=2*(x*2)-5print(y)150,520,122xxxxy