提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
一、单、双分支选择结构
①性质
单分支:只有if
双分支:类似于c、java的if-else语句
②特殊形式表达式
value1 if condition else value2
上面这个表达式其实也是双分支结构
当condition为True时,表达式的值为value1,否则为value2
惰性求值:
如果前面条件过了,后面value2即便有语法错误也不会报错。
二、多分支嵌套选择结构
①性质
类似于c、java的if—else if—else语句
注意:
Python中无switch case功能,但可以用元组、列表、字典来构建跳转表
在使用多分支嵌套选择结构的时候,要注意缩进问题
②例题
编程判断今天是这一年的第几天
import time
def demo(year,month,day):
day_month=[31,28,31,30,31,30,31,31,30,31,30,31]
if year%400==0 or (year%4==0 and year%100!=0):
day_month[1]=29
if month==1:
return day
else:
return sum(day_month[0:month-1:1])+day
data=time.localtime()
year,month,day=data[0:3:1]
print(demo(year,month,day))
三、循环结构
①特殊性质
在Python中for和while循环都可以带else,在它们循环结束之后执行操作
但如循环是因为执行了break操作,则不会执行else中的语句
②例题
判断一个数是否为素数
import math
n=int(input())
m=math.ceil(math.sqrt(n)+1) #math.ceil()是将数向上取整,math.sqrt()是求平均数
for i in range(2,m):
if n%1==0 and i<n:
print("no")
break
else:
print("yes")