您的位置:首页 > 编程语言 > Python开发

初学python-练习_4使用python编写本地登录程序(带注册)

2018-02-08 11:00 591 查看
源代码:
#!/usr/bin/python
#-*- coding:UTF-8 -*- #set chinese code
#设置相关值
NAME_MAX = 8; #名称长度限制
AUTOGRAPH_MAX = 16; #签名长度限制
EDIT = True; #程序结束
while EDIT:
#打印开始界面
print "**********登录到您的python**********";
Account_number = raw_input("\t账号:");
Account_Password = raw_input("\t密码:");
#通过文件名打开本地用户名
#捕获异常
try:
#判断账号是否存在
Account_number_file = open(Account_number,"r");
#打印账号信息
print "**********账号信息**********";
print "账号:",Account_number_file.next(),; #已从文件行中读取换行符,所以不需要换行
Account_number_file.next(); #跳过密码
print "名称:",Account_number_file.next(),;
#字符格式化
if Account_number_file.next() == "gg\n":
print "性别: 男";
else:
print "性别: 女";
print "签名:",Account_number_file.next(),;
break;
except IOError: #open函数调用失败是IOError会被设置异常
#打开失败则表示该文件不存在询问用户是否创建
#轮询判断
while True:
Create_conditions = raw_input("该账号不存在是否创建?(y/n)");
if Create_conditions == 'y':
#让用户填写相关完整信息
#名称
print "请为该账号完善信息";
#轮询判断名称长度是否超出限制
while True:
Account_number_name = raw_input("名称:");
if len(Account_number_name) > NAME_MAX:#(utf-8 code)
print "名称超出限制,请限制在8个字符以内(中文算2个字符)\n请重新输入";
else:
break;
#性别
#轮询判断输入是否正确
while True:
Account_number_gender = raw_input("性别(gg/mm):");
if Account_number_gender != "gg" and Account_number_gender != "mm":
print "您输入有误,请重新输入";
else:
break;
#签名
#轮询判断签名是否超出限制
while True:
Account_number_autograph = raw_input("签名:");
if len(Account_number_autograph) > AUTOGRAPH_MAX:
print "签名长度超出限制,请控制在16个字符以内(中文算2个字符)\n请重新输入";
else:
break;
#将账号信息写入
Account_number_file = open(Account_number,"w+");
Account_number_file.write(Account_number); #写入账号
Account_number_file.write("\n"); #写入签名
Account_number_file.write(Account_Password); #写入换行
Account_number_file.write("\n"); #写入签名
Account_number_file.write(Account_number_name); #写入换行
Account_number_file.write("\n"); #写入签名
Account_number_file.write(Account_number_gender); #写入性别
Account_number_file.write("\n"); #写入换行
Account_number_file.write(Account_number_autograph); #写入签名
Account_number_file.write("\n"); #写入换行
print "创建完成,登录到您的python吧~";
break;
elif Create_conditions == 'n':
EDIT = False;
break;
else:
print "输入的格式不正确,请重新输入";

运行示列:
**********登录到您的python**********
账号:123
密码:123
该账号不存在是否创建?(y/n)y
请为该账号完善信息
名称:test
性别(gg/mm):gg
签名:这里是签名~
签名长度超出限制,请控制在16个字符以内(中文算2个字符)
请重新输入
签名:这里是签名
创建完成,登录到您的python吧~
**********登录到您的python**********
账号:123
密码:123
**********账号信息**********
账号: 123
名称: test
性别: 男
签名: 这里是签名
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐