分支结构
1. if语句的使用
验证用户名与密码
username =input('User:') password = input('Password') if username=='admin' and password =='123': print('Login') else: print('Erro.')
利用分支结构实现验证输入内容同时含有大小写字母同时包含数字
password=input('>>') A = 'qwertyuiopasdfghjklzxcvbnm' B = 'QWERTYUIOPASDFGHJKLZXCVBNM' C = '1234567890' count1,count2,count3=False,False,False for i in password: if i in A: count1=True if i in B: count2=True if i in C: count3=True if count1 and count2 and count3: print('OK') else: print('必须含有大小写和数字')
2.elif语句的使用
使用rlif实现计算器
num1,num2 = map(float,input('num1,num2').split(',')) choose_method = input('Choose Medthod:[+,-,*,/]') if choose_method in '+-*/': if choose_method =='+': print('%f+%f=%f' % (num1,num2,num1+num2)) elif choose_method =='-': print('%f-%f=%f' % (num1,num2,num1-num2)) elif choose_method =='*': print('%.2f*%f=%f' % (num1,num2,num1*num2)) elif choose_method =='/': print('%f/%f=%f' % (num1,num2,num1/num2)) else: raise KeyError('Only choose [+,-,*,/]')
小练习
#银行卡密码验证
input_ = int(input('请输入银行卡密码:>>')) ini_password = 123456 for i in range(2): if input_ == ini_password: print('密码真确!') break else: print('密码错误,请尝试重新输入:') input_ = int(input('请输入银行卡密码:>>')) else: print('账号锁定,请移至柜台解锁')
(输入错误达到三次时,账号锁定)
#验证码小程序
import random for i in range(3): yanzhengma = random.randrange(1000,9999) print('验证码为:%d'%yanzhengma) input_ = int(input('请输入验证码:>>')) if input_ == yanzhengma: print('验证码真确!') break else: print('验证码错误,请尝试重新输入:')
2.循环结构
*while循环一点要有结束条件,否则很容易进入死循环
*while适用于广度遍历
*for开发中经常用到
for in 循环求10000以内的完全数
for i in range(1,10000):
res = 0
for j in range(1,i):
if i % j == 0:
res += j
if i == res:
print(i)
while循环
计算机给出1~100随机数,用户猜计算机给出的数,计算机将给出提示
import random answer = random.randint(1, 100) counter = 0 while True: counter += 1 number = int(input('请输入: ')) if number < answer: print('大一点') elif number > answer: print('小一点') else: print('恭喜你猜对了!') break print('你总共猜了%d次' % counter) if counter > 7: print('你的还需要加油啊!')