一.Python中的语句
1、if
语法:
if 条件1为真:
执行的命令1
elif 条件2为真:
执行的命令2
elif ...:
...
else:
不符合所有条件时执行的命令
条件1 and 条件2
两个条件同时满足时,返回真True
两个条件只要有一个不满足,返回假False
条件1 or 条件2
两个条件只要满足一个时,返回真True
两个条件都不满足,返回假False
例题:
例题1.生成一个1000以内的随机数,用户猜测生成的数字,得到猜测的数字后反馈用户猜的是否正确,若不正确,提示用户猜的大了还是小了。
import random #加载random函数
num = random.randint(1, 999) #从1~999范围的整形内随机选取一个赋值给num
userinput = int(input("请输入您猜的数字")) #将猜的数字赋值给userinput
if num > userinput: #若num>userinput,则
print("您猜的数字有些小呢") #打印"您猜的数字有些小呢"
elif num == userinput: #若num=userinput,则
print("猜对啦w恭喜~") #打印"猜对啦w恭喜~"
else: #若都不是,则
print("您猜的数字太大啦") #打印"您猜的数字太大啦"
例题2.输入想要查询的年月,查看该月有多少天
YEAR = int(input("请输入想要查询的年份:")) #将输入的年份转化为int型赋值给YEAR
MONTH = int(input("请输入想要查询的月份:")) #将输入的月份转化为int型赋值给MONTH
num4 = int(YEAR % 4) #将YEAR % 4的值转化为int型赋值给num4
num100 = int(YEAR % 100) #将YEAR % 100的值转化为int型赋值给num100
num400 = int(YEAR % 400) #将YEAR % 400的值转化为int型赋值给num400
if (((num400 == 0) or (num4 == 0 and num100 != 0)) #判断闰年的2月
and (MONTH == 2)):
print("该月有29天哦") #输出29天
elif ((MONTH == 1) or (MONTH==3) or (MONTH==5) or (MONTH==7) or (MONTH==8) or (MONTH==10) or (MONTH==12)): #若月份属于31天的月份
print("该月有31天呢") #输出31天
elif ((MONTH == 4) or (MONTH==6) or (MONTH==9) or (MONTH==11)): #若月份属于30天的月份
print("该月有30天呢") #输出30天
else: #否则
print("该月只有28天") #输出28天(非闰年的2月)
例题3.输入月份,打印这个月是什么季节
MONTH=int(input("请输入月份:")) #将输入的月份转化为整形赋值给MONTH
if (MONTH==3) or (MONTH==4) or (MONTH==5): #若MONTH=3或4或5
print("春季") #打印“春季”
elif (MONTH==6) or (MONTH==7) or (MONTH==8): #若MONTH=6或7或8
print("夏季") #打印“夏季”
elif (MONTH == 9) or (MONTH == 10) or (MONTH == 11): #若MONTH=9或10或11
print("秋季") #打印“秋季”
else: #否则
print("冬季") #打印“冬季”
2、while循环
语法:
while 条件为真:
满足条件时执行的语句
else:
不满足条件时执行的语句
例题:
==例题1.==请用户输入用户名和密码,若密码正确则登录成功,不正确则失败,仅有3次机会,给用户剩余机会的提示
i=3
while i!=0: #当i不等于0时为True
AUTH = input("请输入用户名:")
PASSWD = input("请输入密码:")
if PASSWD == "123456":
print("登陆成功")
break
else: #否则为False
i -= 1
print("登陆失败,您还有%d次机会" %(i))
==例题2.==给用户出10以内的加法,让用户计算出结果并输入,有正误提示,输入exit退出系统,退出时提示总答题数、正确题数、正确率。
import random
true = 0
false = 0
while True:
num1=random.randint(0,9)
num2=random.randint(0,9)
sum=num1+num2
print("%d+%d=" %(num1,num2))
test=input("请输入您计算的结果:")
if test=="exit" and true+false != 0: #当用户答了起码1道题后退出时
lv=true/(true+false)
print("退出系统")
print("您共答题%d道,正确%d道,正确率为%.0f%%" %((true+false),true,lv*100))
break
elif test=="exit" and true+false == 0: #当用户一道题都没答就退出时
print("退出系统")
lv=0
print("您共答题0道,正确0道,正确率为0%")
break
elif int(test)==sum: #当用户答对时
true += 1
print("计算正确")
else: #当用户答错时
false +=1
print("计算错误")