博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
7.31每日课后作业之购物车功能完善
阅读量:4877 次
发布时间:2019-06-11

本文共 4032 字,大约阅读时间需要 13 分钟。

# 作业: # 编写用户注册函数,实现功能 # 1、在函数内接收用户输入的用户名、密码、余额 # 要求用户输入的用户名必须为字符串,并且保证用户输入的用户名不与其他用户重复 # 要求用户输入两次密码,确认输入一致 # 要求用户输入的余额必须为数字 # def register_input(): #     while True: #         name = input('用户名:').strip() #         if name.isalpha(): #             break #         else: #             print('非法输入,重新输入') #     pwd=input('密码:').strip() #     pwd1=input('确认密码:').strip() #     return name,pwd,pwd1 # def register(name,pwd,pwd1): #     with open(r'db.txt',mode='r',encoding='utf-8') as f: #         while True: #             for line in f: #                 line=line.strip('\n').split(',') #                 if name==line[0]: #                     print('用户名已存在请重新输入') #                     register_input() #             if pwd==pwd1: #                 print('注册成功') #                 break #             else: #                 print('密码不同,重新输入') #         while True: #             balance=input('充值金额:') #             if balance.isdigit(): #                 balance=int(balance) #                 break #             else: #                 print('非法输入') #                 continue #     with open(r'db.txt', mode='a', encoding='utf-8') as f1: #         f1.write('%s,%s,%s\n' %(name,pwd,balance)) # f=register_input() # register(*f) # 2、要求注册的用户信息全部存放于文件中 # 编写用户转账函数,实现功能 # 1、传入源账户名(保证必须为str)、目标账户名(保证必须为str)、转账金额(保证必须为数字) # 2、实现源账户减钱,目标账户加钱 # import os # def land_input(): #     while True: #         name = input('用户名:').strip() #         if name.isalpha(): #             break #         else: #             print('非法输入,重新输入') #     pwd=input('密码:').strip() #     if pwd.isdigit(): #         pwd=int(pwd) #     with open ('db.txt',mode='r',encoding='utf-8') as f: #         for line in f: #             line=line.strip('\n').split(',') #             if name==line[0] and pwd==line[1]: #                 print('登陆成功') #                 balance=int(line[2]) #                 return name, balance #             else: #                 land_input() # def transfer_accounts(name,balance): #     while True: #         operating_name=input('目标帐户名:').strip() #         if name.isalpha(): #             break #         else: #             print('非法输入,重新输入') #         operating_balance=input('转账金额:').strip() #         if operating_balance.isdigit(): #             operating_balance=int(operating_balance) #         print(name) #         confirm_name=input('确认账户:y/n').strip() #         if confirm_name in ('y','yes','Y'): #             with open('db.txt',mode='r',encoding='utf-8') as f,open('db.txt.swap',mode='w',encoding='utf-8') as f1: #                 for line in f: #                     if line.startswith(operating_name) : #                         line= line.strip('\n').split(',') #                         line[2] = int(line[2]) #                         line[2]+=operating_balance #                         line[-1]=str(line[2]) #                         line=','.join(line)+'\n' #                     if line.startswith(name): #                         line= line.strip('\n').split(',') #                         line[2]=int(line[2]) #                         line[2]-=operating_balance #                         line[-1]=str(line[2]) #                         line=','.join(line)+'\n' #                     f1.write(line) #             os.remove('db.txt') #             os.rename('db.txt.swap','db.txt') #             break #         elif confirm_name in ('n','N','no'): #             transfer_accounts() #         else: #             print('非法输入') # f=land_input() # # print(*f) # transfer_accounts(*f) # 编写用户验证函数,实现功能 # 1、用户输入账号,密码,然后与文件中存放的账号密码验证 # 2、同一账号输错密码三次则锁定 # # 3、这一项为选做功能:锁定的账号,在五分钟内无法再次登录 # 提示:一旦用户锁定,则将用户名与当前时间写入文件,例如: egon:1522134383.29839 # 实现方式如下: # # import time # # current_time=time.time() # current_time=str(current_time) #当前的时间是浮点数,要存放于文件,需要转成字符串 # lock_user='%s:%s\n' %('egon',current_time) # # 然后打开文件 # f.write(lock_user) # # 以后再次执行用户验证功能,先判断用户输入的用户名是否是锁定的用户,如果是,再用当前时间time.time()减去锁定的用户名后 # 的时间,如果得出的结果小于300秒,则直接终止函数,无法认证,否则就从文件中清除锁定的用户信息,并允许用户进行认证

转载于:https://www.cnblogs.com/Maikes/p/9458866.html

你可能感兴趣的文章
数据结构一链表
查看>>
java 定时操作
查看>>
POJ 1737 统计有n个顶点的连通图有多少个 (带标号)
查看>>
grumble.js
查看>>
[置顶] 异步加载图片,使用LruCache和SD卡或手机缓存,效果非常的流畅
查看>>
由于客户端检测到一个协议错误 代码0x1104
查看>>
mac下的vim使用教程
查看>>
读书笔记2014第4本:程序员修炼之道-从小工到专家(第七、八章)
查看>>
OpenCv访问图像像素
查看>>
线段树
查看>>
大数据技术之Kafka
查看>>
【转】 U3D DrawCall优化手记 - 夜阑卧听风吹雨
查看>>
Nginx配置跨域请求“Access-Control-Allow-Origin”
查看>>
对象初始化器和集合初始化器
查看>>
4、QT分析之调试跟踪系统
查看>>
个推IGt.BaseTemplate.php,不仅有bug,还有bom头,好恶心!
查看>>
【leetcode】Longest Substring Without Repeating Characters (middle)
查看>>
ASP.NET MVC4 学习笔记-2
查看>>
基于 websocket 实现的 im 实时通讯案例
查看>>
tar 解压 跳过第一级目录
查看>>