源代码:

#!/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
性别: 男
签名: 这里是签名

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

  1. python 验证码_4行Python代码生成图像验证码

    点击上方蓝色字体,关注我们 最近无意看到网上有人使用Python编写几十行代码生成图像验证码,感觉很是繁琐,这里为各位朋友推荐两种方法,使用4行Python代码即可生成验证码. 1 captcha库 ...

  2. 用python做一个木马_Python编写简易木马程序

    light · 2015/01/26 10:07 0x00 准备 文章内容仅供学习研究.切勿用于非法用途! 这次我们使用Python编写一个具有键盘记录.截屏以及通信功能的简易木马.依然选用Subli ...

  3. (转)使用异步Python 3.6和Redis编写快速应用程序

    转自:http://mp.weixin.qq.com/s?__biz=MjM5NzU0MzU0Nw==&mid=2651374524&idx=1&sn=d289aa7aa484 ...

  4. python用户名密码_Python编写密码登录程序

    要求: 用户名(_username): Python 用户密码(_passwd): python123 用户收到提示后分别输入用户名和密码,如果输入错误则返回:Invalid username or ...

  5. python英雄联盟登录程序,注册用户程序

    while True:print("\t\t\t英雄商城登录界面\n")print("~*" * 38)print("\t\t\t1.用户登录\n&q ...

  6. Python好书推荐《Python代码整洁之道》——编写优雅的代码

    前言 Python是当今最流行的语言之一.相对较新的领域如数据科学.人工智能.机器人和数据分析,以及传统的专业如Web开发和科学研究等,都在拥抱Python.随着时间的推移,Python有可能会发展成 ...

  7. python 编程一日一练-爱上Python:一日精通Python编程

    目录 第1章 什么是Python ?1 1.1 什么是 Python ? 1 1.2 为什么学习 Python ? 1 第2章 为 Python 做好准备 3 2.1 安装解释器 3 2.2 使用 P ...

  8. 一日精通python编程_爱上Python:一日精通Python编程

    目录 第1章 什么是Python ?1 1.1 什么是 Python ? 1 1.2 为什么学习 Python ? 1 第2章 为 Python 做好准备 3 2.1 安装解释器 3 2.2 使用 P ...

  9. 一日精通python编程_爱上Python 一日精通Python编程 [Learn Python in One Day and Learn it Well ]...

    第1章 什么是Python ? 1 1.1 什么是 Python ? 1 1.2 为什么学习 Python ? 1 第2章 为 Python 做好准备 3 2.1 安装解释器 3 2.2 使用 Pyt ...

最新文章

  1. QPS/TPS/并发量/系统吞吐量的概念
  2. OpenCV2.4.13在VS2012环境的debug模式下的链接库输入配置的文件目录
  3. 如何配置Windows Live Writer
  4. wifi漫游测试过程
  5. ABAP中操作回车、换行、回车加换行、的方案
  6. C 和C语言条件运算符的区别
  7. [Redux/Mobx] 为什么redux能做到局部渲染呢?
  8. 玩转oracle 11g(44):数据库发展历史
  9. 运维老哥必须知道的Linux系统文件目录组织结构
  10. 2021高通AI应用创新大赛-创新赛道-垃圾分类识别 第三次会议研讨
  11. Java查询对象中匹配元素_用LinkedList如何实现搜索指定对象的元素
  12. android ORM框架的性能简单测试(androrm vs ormlite)
  13. scratch图形化编程操作硬件
  14. Win7 - 隐藏计算机中收藏夹和库
  15. nodemon:运行提示错误:无法加载文件 xxxx
  16. 解读 | 全球七大央行最新报告:CBDC发行原则与核心特征
  17. EAST的EPTC骗局
  18. C++重载决议(Overload Resolution)
  19. PCIe LTSSM 之 Detect 状态
  20. 【听】你会杀死那个胖子吗?功利与道德的选择

热门文章

  1. Android Studio导入so文件到项目中
  2. easyUi load方法重新加载表单的数据
  3. 打印浏览器文章为pdf
  4. php中array怎么用,php中array()函数如何使用
  5. python 特征工程_[译] 基于时序数据的特征工程 --- Python实现
  6. tkinter 中给某个文本加上滚动条_Python Tkinter自制文本编辑器
  7. gradle文件利用java解析_使用文件读取Gradle Multi项目构建
  8. contos7改分辨率_centos7分辨率怎么设置-修改centos7分辨率的方法 - 河东软件园
  9. mysql排序区分大小写吗_MySQL的order by时区分大小写
  10. R语言之随机数与抽样模拟篇