python 扩展注册功能装饰器举例
2024-08-28 20:44:51
db_path='db.txt'
def get_uname():
while True:
uname=input('请输入用户名:').strip()
if uname.isalpha():
with open(r'%s' %(db_path),'r',encoding='utf-8') as f:
for i in f:
unifo=i.strip('\n').split(',')
print (unifo) #查看查找过程
if uname==unifo[0]:
print('用户已存在,请重新输入')
break
else:
return uname
else:
print ('用户名必须是中文或字母')
def get_pwd():
while True:
pwd1=input('请输入密码:').strip()
pwd2=input('请再次输入密码:').strip()
if pwd1 == pwd2:
return pwd1
else:
print('两次输入的密码不一致,请重新输入...')
def get_bal():
while True:
bal=input('请输入余额:')
if bal.isdecimal():
return bal
else:
print ('钱是数字,傻逼 。。。')
def file_hanle(uname, pwd, bal):
with open(r'%s' %(db_path),'a',encoding='utf-8') as f:
f.write('%s,%s,%s\n' %(uname, pwd, bal))
def register():
uname = get_uname() # 拿到合法的用户名
pwd = get_pwd() # 拿到合法的密码
bal = get_bal() # 拿到合法的余额
file_hanle(uname, pwd, bal) # 写入文件
#===============================================装饰器
def example(func):
def wrapper(*args,**kwargs):
start_time = time.time() #可扩展功能
res = func(*args, **kwargs)
stop_time = time.time()
print(stop_time - start_time)
return res
return wrapper
register=example(register)
#=====================================
res=register()
print (res)
最新文章
- CodeForces 165E Compatible Numbers(位运算 + 好题)
- Icon Font浅谈
- javascript createElement ttf
- Rap 安装和配置
- 使用jquery制作可视化的组织结构
- TCL/Expect交互式自动化测试概要 - - ITeye技术网站
- 0617 python 基础04
- 用IntelliJ IDEA搭建第一个SpringBoot例子
- Javascript正则表达入参是null
- llvm Array Bounds Check Elimination
- 虚拟机中不能连接usb设备解决办法
- 记录Linux下解压大文件时的一次奇葩经历
- Feign 注意事项
- 【linux】linux命令grep + awk 详解
- 12.预处理数据的方法总结(使用sklearn-preprocessing)
- JavaScript前端将时间戳转换为日期格式
- SaltStack 的插件特性
- 认识CSS中高级技巧之元素的显示与隐藏
- AC日记——NOI2016区间 bzoj 4653
- [javascript]JS如何获取当前时间戳