Python选择结构与循环结构及应用(第四章) |
您所在的位置:网站首页 › python选择与循环 › Python选择结构与循环结构及应用(第四章) |
1. 条件表达式
1. python中条件表达式的值只要不 False、0(0.0,0j等)、空值None、空列表、空元组、空集合、空字典、空字符串、空range对象或其他空迭代对象,Python解释器均认为True等价 例: >>> if 666: print(True) True >>> #使用整数作为条件表达式 >>> a=[1,2,3] >>> if a: print(a) [1, 2, 3] >>> #使用列表作为条件表达式 >>> a=[] >>> if a: print(a) else: print('empty') empty >>>注:Python中boolean类型的False与True,首字母大写 2. Pyhton中的赋值语句 >>> a,b,c=1,2,3 >>> print(a,b,c) 1 2 3 >>>3.赋值语句的拓展 >>> x=input('输入一个字符串:') >>> a,b=map(int,s.split())注:x是接收的一个字符串,map(类型,split(分隔符)),如果定义好的类型,接收的值必须是同类型的值,否则会报错(这里必须接收的是两个整型的值,且必须由空格分开) 4. Python中的交换值 >>> a,b=b,a >>> print(a,b) 2 1 >>> 2.选择结构1. 单分支,语法: if 表达式: 语句块 注:不管是选择结构还是循环结构,Python中的表达式可已不括起来,但是后面的:是不可缺少的,结构中的语句块必须做相应的缩进(4个空格为缩进单位),也就是一定要层次分明 2.双分支,语法: if 表达式: 语句块 else: 语句块 4. 多分支结构,语法: if 表达式1: 语句块1 elif 表达式2: #这里的elif 与其他语言else if 一样,但在python中不能用else if 语句块2 elif 表达式3: 语句块1 …… else: 语句块n 3.循环结构while 结构: while 条件表达式: 循环体 else: 代码块 for 结构: for 取值 in 序列或迭代对象: 循环体 else ; 代码块 注:循环结构中的else子句,可带可不带,其用法是循环因条件表达式,不成立或序列遍结束 ,去执行else中的语句,如果因break语句导致循环提前结束则不会执行else的语句 例: >>> a=100 >>> while a>> 4.应用1. 质数(Prime number,又称素数),指在大于1的自然数中,除了1和该数自身外,无法被其他自然数整除的数(也可定义为只有1与该数本身两个正因数的数)。 例:求100内素数 >>> j=0 >>> for i in range(1,100,2): #偶数不是素数,1-100的随机数,步长为2 for j in range(3,i+1,1): #判断是否是素数,i+1的随机数的产生不包括i+1 if i%j==0: break if j==i: print(i)等价于: >>> for i in range(3,100,2): for j in range(3,int(i**0.5)+1,1): if i%j==0: break else: print(i)注:这里没有包含2的素数,这里为了方便,是设计步长为2 2. 求下平均成绩,输入yes时输入下一个成绩,输入no时得结果 numbers=[] while True: x=input("输入成绩:") #异常处理,保证为实数 try: numbers.append(float(x)) except: print("不合法分数?") while True: flag=input('是否继续输入下一个数:(yes/no)')#执行到这句时,flag声明成功,如果不执行的话,下面if中的flag会报错 if flag not in('yes','no'): print('只能输入yes/no') else: break if flag=='no':#python中只要用到说明就已经声明了 break print(sum(numbers)/len(numbers))注:变量的声明,在使用时,也就是赋值时,变量声明成功,不要求范围,与java不一样 例:比较 python if 1 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |