python中if,for,while语
- 2020 年 1 月 14 日
- 筆記
if的用法
if 条件 print() else (当不满足if条件时) print() 例如 age=input('请输入年龄') if age >= 18: print('你已经成年,欢迎来酒吧') else: print('未成年,回家写作业')
elif的用法
if 要判断的条件: 条件成立时,要做的事 elif 条件2: XXXXXXXXX else: 条件都不成立时,要做的事
elif 和 else都必须和if联合使用,不能单独使用 例如:
holiday_name = input('请输入节日名称') if holiday_name == '春节': print('吃饺子') elif holiday_name == '元宵节': print('吃元宵') elif holiday_name == '情人节': print('买礼物') else: print('不过节')
if的嵌套
have_ticket = input('请输入乘客是否有票,有票输入Ture,无票输入False') knife_length=input(请输入刀长) if have_ticket: print('车票检查通过,准备安检...') if knife_length > 20: print('刀长度为 %d:超出限定长度,禁止入内' %knife_length) else: print('刀长度为 %d:未超出限定长度,允许入内' %knife_length) else: print('请先买票')
if综合练习题
import random # a = random.randint(1,10) # print(a) #1.从控制台输入要出的拳 player = int(input('请输入您要出的拳:石头1/剪刀2/布3:')) #2.电脑出拳 computer = random.randint(1,3) print(computer) #3.比较胜负 if ((player == 1 and computer == 2) or (player == 2 and computer == 3) or (player == 3 and computer == 1)): print('玩家胜利') elif player == computer: print('平局') else: print('玩家失败')
for循环语句的使用
for 变量 in range(10): 循环需要执行的代码 练习: #求1~100之间所有偶数之和
sum = 0 for i in range(2,101,2): ##第一个2表示从2开始,101表示截止101,第二个2表示步长为2 sum += i print(sum)
#求1~100之间所有奇数之和
sum = 0 for i in range(1,101,2): ##第一个2表示从2开始,101表示截止101,第二个2表示步长为2 sum += i print(sum)
####求x的阶乘
num = int(input('Num:')) res = 1 for i in range(1,num + 1): res *= i print('%d的阶乘为:%d' %(num,res))
for循环练习题:
用户登录需求: 1.输入用户名和密码; 2.判断用户名和密码是否正确(name='root',passwd='westos') 3.登录仅有三次机会,超过3次会报错
for i in range(3): name = input('用户名:') passwd = input('密码:') if name == 'root' and passwd == 'westos': print('登录成功') break else: print('登录失败') print('您还剩余%d次机会' %(2 - i)) else: print('登录次数超过三次,请稍后登录')
while循环及死循环
while 条件(): 条件满足时,做的事情1 条件满足时,做的事情2 。。。。。。。。 例如:
#1.定义一个整数变量,记录循环的次数 i = 1 #2.开始循环 while i <= 3: #希望循环内执行的代码 print('hello python') #处理计数器 i += 1
输出结果为打印三次hello python while死循环
#定义死循环
while True: ###当条件成立时,也可以用其他的成立的条件替换true print('hello python')####当条件成立时要执行的代码
while循环练习题1: 0-100 之间的整数求和
#1.定义一个整数记录循环的次数 i = 0 #2.定义最终结果的变量 result = 0 3.开始循环 while i <= 100: print(i) #4.每次循环都让result和i这个计数器相加 result += i #5.处理计数器 i += 1 print('0~100之间的数字求和结果为 %d' %result)
while循环练习题2: 用户登录系统,用户名为root密码为westos,当用户名或密码输入错误时会报错,总共三次机会,每次错误提示用户剩余几次机会
for i in range(3): trycount = 0 while trycount < 3: name = input('用户名:') passwd = input('密码:') if name == 'root' and passwd == 'westos': print('登录成功') break else: print('登录失败') print('您还剩余%d次机会' %(2 - trycount)) trycount += 1 else: print('登录次数超过三次,请稍后登录')
while嵌套
练习题: 1.在控制台连续输出五行*,每一行星号数量依次递增
* ** *** **** *****
#1.定义一个行计数器 row = 1 while row <= 5: #定义一个列计数器 col = 1 #开始循环 while col <= row: print('*',end='') col += 1 print('') row += 1
2.猜数字游戏: 1.系统随机生成一个1~100的数字; 2.用户共有5次机会猜; 3.如果用户猜测数字大于系统给出的数字,打印"too big" 4.如果用户猜测数字小于系统给出的数字,打印"too small" 5.如果用户猜测的数字等于系统给出的数字,打印"恭喜中奖", 并退出循环
import random randomnum=random.randint(1,100) for i in range(5): usernum=int(input('请输入数字:')) if usernum == randomnum : print('恭喜中奖') break elif usernum > randomnum: print('too big') else: print('too small') print('你还剩下%d次机会' %(5-i)) else: print('你没有中奖')