python学习第一天笔记一

第一天接触学习python感觉不是很难,老师讲的东西感觉自己都掌握了,但是还是需要多加练习,课后老师布置了作业

作业详细分析

#1、用户没有被注册过,两次1密码输入一致,可以注册成功
#2、账号密码和都不能输入为空,如果输入为空的话,你要提示账号/密码不能为空
#3、如果注册成功,
#恭喜xxx注册成功,今天的日期是xx
#退出
#4、错误次数最多3次 ,两次密码必须一样,如果有三次不一样,重新注册
#5、输入一个空格和输入10个空格都是为空的
import datetime
import re
today=datetime.datetime.today() #该变量取得是系统的当前日期
count=0
while count<3: #while循环
username = input('用户名:') #在用户名后边需要输入一个变量username的值
username=str(username) #将变量username的类型转换为字符串数据字符型,方便后边的程序使用
user1 = ['李一', '李二', '李三', '李四', username] #定义了一个列表,将变量username新增到列表的最末位,列表的下标从0开始,李二是第一个元素,username是第三个元素。
if username in user1: #判断输入的变量username的值是否和user1列表中的某一个值相同
user1.pop() #如果相同删除最末位的元素,即新增的元素username
if username.replace(' ','')=='': #判断输入的变量username的值是否为空,而且将输入的空格删除,替换为空
print("账号/密码不能为空!") #输出字符串:账号/密码不能为空!
continue #判断如果出现该情况,继续执行username = input('用户名:')

count=count+1 #出现该情况时在执行次数上+1
    elif len(username)>len(username.replace(' ','')):    #校验输入的变量中是否有空格,长度大于0,且其中的空格全部替换删除,如果有空格就会出现变量的长度大于删除空格后的长度
print("账号/密码不能有空格!")
continue
count=count+1
elif username<= u'\u4e00' or username>=u'\u9fa5':
#校验输入的变量中是否有汉字,输入的值在u'\u4e00'和u'\u9fa5'之间,证明输入的值是汉字,如果不在这个区间则证明输入的值不是汉字
print("账号中必须有汉字")
continue
count=count+1
elif username in user1:
print("你所注册的用户名已经完成注册,请直接登录")
continue
count=count+1
elif username not in user1: #校验变量username的值是否和列表user1中的某个元素的值相同
user1.append(username)
break
count = 0
while count < 3:
passwd = input('密码:')
passwd=str(passwd)
if passwd.replace(' ','')=='':
print("账号/密码内容不能为空!")
continue
elif len(passwd)>len(passwd.replace(' ','')):
print("账号/密码不能有空格!")
continue
elif len(passwd)<=8: #校验密码的长度不能少于8位
print("密码长度不能少于8位")
elif re.match("^(?:(?=.*[A-Z])(?=.*[a-z])(?=.*[0-9])).*$",passwd)==None: #校验密码的值中既包含大写字母,又包含小写字母,还包含数字,A-Z代表26个大写的英文字母,a-z代表26个小写的英文字母,0-9代表数字
print("密码中必须包含大小写字母和数字!")
else:
break
count = 0
while count < 3:
cpasswd =input('再次输入密码:')
cpasswd=str(cpasswd)
msg = "恭喜%s注册成功,今天的日期是%s!" % (username, today)
#%s是占位符,第一个%s相当于为变量username占位,变量值确认后直接加在恭喜和注册中间,后边的是%s是给变量today占位。
#占位符%d代表整数,假如变量的值为99.336,%d就是99;%f代表小数;%.2f代表保留两位小数,%.2f的值就是99.34
if passwd==cpasswd: #判断passwd和cpasswd的值相同
print(msg) #输出字符串msg
break #跳出程序
else:
print("输入的内容和密码不一致,请重新输入!") #如果不一致,则继续执行
count=count+1
else:
print(" 前后输入的密码已三次不一致,请重新输入密码") #count的值大于等于3则输出字符串且程序停止执行

猜你喜欢

转载自www.cnblogs.com/duxiansheng/p/9112888.html