# coding = UTF-8           注释格式

import datetime        引用日期

today = datetime.datetime.today().strftime("%Y-%m-%d %H:%M:%S")  # 获取到今天的日期,并限定日期格式

# 错误次数3次
for i in range(3): username = input('请输入你的用户名:').strip()   去除输入值中的空格
passwd = input('请输入你的密码:').strip()
cpasswd = input('请再次输入你的密码:').strip() file = open('newname.txt','r',encoding='utf-8') 打开文件,文件与运行代码在同意目录时不用加绝对路径,执行文件显示格式
                                    r只读 r+读写 ; 指针在文件开始
                                    w写 w+写读 ; 创建,覆盖,指针在文件开始
                                    a追加写入不可读 a+追加写入 ; 创建 指针在文件尾
                                     根据文件指针判断是否加“file.seek(0)”,将指针移到文件开始位置  
done = 0
data = {}                            定义一个字典
while not done:                        循环读取每一行,若为空则退出循环
aLine = file.readline()
if(aLine != ''):
#print(aLine)
bline = aLine.split(',')              将读取的值根据‘,’切割
#print(bline)
# k=bline[0]
# v=bline[1]
# print(k)
# print(v)
data[bline[0]]=bline[1].strip('\n')        将读取到的k,v形式存入data字典
#data.setdefault(bline)
else:
done = 1
file.close() #关闭文件
#print(data) if not username or not passwd or not cpasswd:          
print('账号或密码不能为空,请重新输入:')              
# 判断账号密码是否为空                      
elif username in data:
print('账号已注册,请登录!')
# 判断账号是否已存在
elif passwd != cpasswd:
print('密码不一致,请重新输入')
# 判断密码是否一致
elif len(passwd) < 6 or len(passwd) > 12:
print("密码长度必须6-12位")
# 判断密码长度
else: reg = open('newname.txt','a+',encoding='utf-8')          打开文件准备追加输入
# users = [username,passwd]
users =username+','+passwd+'\n'                    拼接数据加上换行符号
#print(users)
#users_s = [str(n) for n in users]                  
reg.writelines(users)                          将users拼接数据写入文件
reg.seek(0)                                将指针放置初始位置,查看是否写入成功
#print('read',reg.readlines())
reg.close()
# users.append(username)
# passwd.append(passwd)
print('恭喜%s注册成功,今天的日期是%s' % (username, today))
break
# 注册成功,退出

python写注册的更多相关文章

  1. Python写各大聊天系统的屏蔽脏话功能原理

    Python写各大聊天系统的屏蔽脏话功能原理 突然想到一个视频里面弹幕被和谐的一满屏的*号觉得很有趣,然后就想用python来试试写写看,结果还真玩出了点效果,思路是首先你得有一个脏话存放的仓库好到时 ...

  2. python写一个邮箱伪造脚本

    前言: 原本打算学php MVC的思路然后写一个项目.但是贼恶心, 写不出来.然后就还是用python写了个邮箱伪造. 0x01 第一步先去搜狐注册一个邮箱 然后,点开设置,开启SMTP服务. 当然你 ...

  3. 用python写windows服务

    用python写windows服务(1) 以python2.5 为例需要软件 * python 2.5        * pywin32(与2.5 版本相匹配的) Service Control Ma ...

  4. 用python 写一个nagios插件 监控http内容(转载)

     nagios自带的http-check插件主要是检测地址url是否可以访问,在web+中间件的架构中容易出现url能访问,但是后台中间件拓机的情况,因为最近在自学python,所以写了个脚本检测ur ...

  5. 用python写网路爬虫 PDF高清完整版免费下载 Python基础教程免费电子书 python入门书籍免费下载

    <用python写网路爬虫PDF免费下载>PDF书籍下载 内容简介 作为一种便捷地收集网上信息并从中抽取出可用信息的方式,网络爬虫技术变得越来越有用.使用Python这样的简单编程语言,你 ...

  6. Python写的微服务如何融入Spring Cloud体系?

    前言 在今天的文章中小码哥将会给大家分享一个目前工作中遇到的一个比较有趣的案例,就是如何将Python写的微服务融入到以Java技术栈为主的Spring Cloud微服务体系中?也许有朋友会有疑问,到 ...

  7. python写红包的原理流程包含random,lambda其中的使用和见简单介绍

    Python写红包的原理流程 首先来说说要用到的知识点,第一个要说的是扩展包random,random模块一般用来生成一个随机数 今天要用到ramdom中unifrom的方法用于生成一个指定范围的随机 ...

  8. Python写地铁的到站的原理简易版

    Python地铁的到站流程及原理(个人理解) 今天坐地铁看着站牌就莫名的想如果用Python写其工作原理 是不是很简单就小试牛刀了下大佬们勿喷纯属小弟个人理解 首先来看看地铁上显示的站牌如下: 就想这 ...

  9. 用Python写一个简单的Web框架

    一.概述 二.从demo_app开始 三.WSGI中的application 四.区分URL 五.重构 1.正则匹配URL 2.DRY 3.抽象出框架 六.参考 一.概述 在Python中,WSGI( ...

随机推荐

  1. 文件系统扫描工具-fsck

    文件系统扫描工具-fsck 注意的是fsck扫描文件系统时一定要在单用户模式.修复模式或把设备umount后进行.建议在单用户模式下运行.如果扫描正常运行中的系统,会造成系统文件损坏. fsck不仅可 ...

  2. thinkphp3.2.3集成腾讯云短信文档流程

    昨天晚上折腾了一个小时没解决 今天折腾了20分钟就搞定了 看了thinkphp3.2.3的命名空间解释方法  把文件放到这里 /ThinkPHP/Library/Org/ 把新建了一个Sms文件夹 把 ...

  3. zabbix解决监控图中出现中文乱码问题

    首先确定zabbix开启了中文支持功能:登录到zabbix服务器的数据目录下(前面部署的zabbix数据目录是/data/www/zabbix),打开 locales.inc.php文件[root@Z ...

  4. python3下获取主流浏览器和python的安装路径

    #coding=utf-8#python3下获取主流浏览器和python的安装路径#by dengpeiyou date:2018-07-09import winreg,os #取得浏览器的安装路径d ...

  5. Android中四大组件总结

    android四大组件分别为activity.service.content provider.broadcast receiver. 一.android四大组件详解 1.activity (1)一个 ...

  6. lnmp环境一键安装

    lnmp一键安装命令: wget -c http://soft.vpser.net/lnmp/lnmp1.5.tar.gz && tar zxf lnmp1.5.tar.gz & ...

  7. c++多态及实现原理

    https://www.cnblogs.com/cxq0017/p/6074247.html 通过虚函数实现,普通函数在编译过程中即确定了函数的地址,虚函数的函数地址是在程序运行的时候确定的,有虚函数 ...

  8. CString类型与其他类型的转换

    1.BSTR转CString BSTR bstr; CString cstr;  cstr = (LPCTSTR)bstr; 2.Cstring 转BSTR CString cstr = _T(&qu ...

  9. eos dapp开发

    https://blog.csdn.net/u010665359/article/details/82906497

  10. StringUtils.isEmpty StringUtils.isBlank

    两个方法都是判断字符是否为空的.前者是要求没有任何字符,即str==null 或 str.length()==0:后者要求是空白字符,即无意义字符.其实isBlank判断的空字符是包括了isEmpty ...