第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > python流程控制结构---if else while for

python流程控制结构---if else while for

时间:2018-09-29 15:42:53

相关推荐

python流程控制结构---if else  while for

python流程控制结构—if else 、while、for

#一、选择流程————if 选择分支语句'''单分支if 条件表达式: 比较运算符 逻辑运算符/符合的条件表达式代码指令....'''score=60if score <=60:print("你的成绩为:\n%d"%(score))print('failed')pass #空语句print('语句运行结束')'''---------------------------------双分支if 条件表达式: 比较运算符 逻辑运算符/符合的条件表达式代码指令....else:代码指令'''score=60if score>60:print("successed")passelse:print("failed")pass--------------------------'''#多分支#1.每个条件互斥#2.至少有2种情况#elif一定要写条件和语句#else 可选,尽量用,避免遗漏情况'''score=int(input("请输入您的成绩:"))if score<60:print("failed")passelif score<80:print("ok")passelif score<90:print("good")passelse:print("very good")passprint("再接再厉,假期愉快!")#猜拳游戏 0-石头、1-剪刀、2-布import random#计算机 人person=int(input("请出拳:[0-石头、1-剪刀、2-布]"))computer=random.randint(0,2)if person ==0 and computer==1: #多条件print("win")passelif person==1 and computer ==2:print("win")passelif person==2 and computer ==0:print("win")passelif person==computer:print("no win no lost")else:print("lost")#if else 的嵌套使用xuefen=int(input("请输入您的学分:"))grade=int(input("请输入您的成绩:"))if xuefen>10:if grade>80:print('升班')passelse:print("学分够了,成绩不达标")passelse:print("学分预警")pass#二、循环语句#循环的分类:while、for#1)while 条件表达式:#代码指令'''***语法特点***1.有初始值2.条件表达式3.变量【循环体内计数变量】的自增或者自减,否则会造成死循环#使用条件:循环的次数不确定,依靠循环条件来结束#目的:为了将相似或者相同的代码操作变的更加简洁,使的代码可以重复利用# for'''#输出1-100之间的数据index=1 #定义一个变量,必须要赋值while index<=100:print(index)index+=1pass# 多次 猜拳游戏 0-石头、1-剪刀、2-布import random#计算机 人count=1while count<=10:person=int(input("请出拳:[0-石头、1-剪刀、2-布]"))computer=random.randint(0,2)if person ==0 and computer==1: #多条件print("win")passelif person==1 and computer ==2:print("win")passelif person==2 and computer ==0:print("win")passelif person==computer:print("no win no lost")else:print("lost")count+=1pass#打印九九乘法表row=1while row<=9:col=1while col<=row:print("%d*%d=%d"%(row,col,row*col),end=" ")col+=1passprint()row+=1passrow=9while row>=1:col=1while col<=row:print("%d*%d=%d"%(row,col,row*col),end=" ")# end=' '的作用是使输出结果不换行,用空格隔开col+=1passprint() #换行row-=1pass#打印直角三角形row=7while row>=1:j=1while j<=row:print("*",end=' ')j+=1passprint()row-=1passrow=1while row<=5:j=1while j<=5-row: #控制打印空格的个数print(' ',end=' ')j+=1passk=1while k<=2*row-1: #控制打印*号print('*',end=' ')k+=1passprint()row+=1pass2)#for循环#语法特点:遍历操作,依次取集合容器中的每个值#for 临时变量 in 容器:# 执行代码块tags='我是一个中国人' #字符串类型本身就是一个字符类型的集合for item in tags:print(item)pass#range函数:生成数据集合列表#range(起始值,结束值,步长) #步长不为0,默认为1sum=0for data in range(1,101): #左闭右开sum+=data #求累加和#print(data,end=' ')passprint("sum=%d"%sum)print(-------------------------for的使用-----------)for data in range(50,201):if data %2==0:print('%d是偶数'%data,end=' ')passelse:print("%d是奇数"%data)passpass#3)break continue#break 代表中断结束 满足条件直接结束本层循环#continue:结束本次循环,继续进行下次循环#这两个关键字只能用在循环中#break 的使用sum=0for item in range(1,51):if sum>100:breakpasssum+=itempassprint("sum=%d"%sum)#continue的使用sum=0for item in range(1,101):if item%2!=0: #满足条件直接跳出本层循环continueprint("continue后的都不会执行")passprint(item) #不满足则printpassfor item in 'i love python':if item=='e':breakpassprint(item)passfor item in 'i love python':if item=='e':continuepassprint(item)index=1while index <=100:if index >20:breakpassprint(index,end=' ')index+=1for i in range(1,10):for j in range(1,10):if i>=j:print("%d*%d=%d"%(i,j,i*j),end=' ')passif i<j:breakpassprint() #控制换行passfor: else: #else 也是for中的一部分只要for中出现了break,else就不会执行,没出现else,else就会执行account='wf'pwd='123'for i in range(1,3):zh=input("请输入账号:")mm=input("请输入密码:")if account==zh and pwd==mm:print("loading...")break #退出本层循环,下面的else也是for中的一部分,所以else也不执行passpasselse:print("error")pass#while else 只要while中没有出现break,else就会执行#只要出现了break,else就不会执行index=1while index<=10:print(index)if index==6:breakpassindex+=1passelse:print("else执行了吗")#day2练习题'''猜年龄小游戏,有三点需求1.允许用户最多尝试3次2.每尝试3次后,如果还没猜对,就问用户是否还想继续玩,如果回答Y或y,就继续让其猜3次,以此往复,如果回答N或n,就退出程序3.如何猜对了,就直接退出'''import randomage=random.randint(0,3)print(age)j=3for i in range(1,4):answer=int(input("请输入您的答案:"))if age==answer:print("bingo")breakpassj-=1print("您还有%d机会"%j)passelse:print("您失败了")times=0count=0while times<=3:age=int(input("请输入您的答案:"))if age==25:print("bingo")breakpasselif age>25:print("太大了")passelse:print("太小了")passtimes+=1if times==3:choose=input("您继续猜吗 Y/N?")if choose=='Y' or choose=='y':time=0 #重置times为初始值passif choose=='N' or choose=='n':times==4passelse:print("请输入正确标记")passpasspass'''#练习题2小王身高1.75,体重80.5kg。请根据BMI公式(体重除以身高的平方)帮小王计算他的BMI指数,并根据BMI指数:低于18.5过轻18.5-25:正常25-28:过重28-32:肥胖高于32:严重肥胖用if-elif判断并打印结果'''height=1.75weight=80.5BMI=weight/(height**2)if BMI<=18.5:print("BMI:%d,过轻"%BMI)passelif BMI<=25:print("BMI:%d,正常" %BMI)passelif BMI<=32:print("BMI:%d,过重" %BMI)passelse:print("BMI:%d,严重肥胖" %BMI)pass

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。