def withdrawal(): user_data = modular_mod.file_info("../account") account_options = input(""" ———- ICBC Bank ————- 1. 账户信息 2. 提现 >>>:""") if account_options.isdigit() and int(account_options) in range(1, 3): account_options = int(account_options) if account_options == 1: file = open(user_data['alex']) user_info = json.load(file) file.close() for i in user_info: print("%s: %s" % (str(i), str(user_info[i]))) else: file = open(user_data['alex']) user_info = json.load(file) file.close() amount_money = input("请输入提现金额:") if amount_money.isdigit( ) and int(amount_money) <= user_info['credit']: amount_money = int(amount_money) user_info['credit'] = int( user_info['credit']) - amount_money - amount_money * 0.05 file = open(user_data['alex'], 'w') json.dump(user_info, file) file.close() else: print("你没有那么多信用额度") else: print("没有此选项")
def transfer_accounts(): user_data = modular_mod.file_info("../account") account_options = input(""" ———- ICBC Bank ————- 1. 账户信息 2. 转账 >>>:""") if account_options.isdigit() and int(account_options) in range(1,3): account_options = int(account_options) if account_options == 1: file = open(user_data['alex']) user_info = json.load(file) file.close() for i in user_info: print("%s: %s"%(str(i), str(user_info[i]))) else: file_alex = open(user_data['alex']) file_tesla = open(user_data['tesla_company']) alex = json.load(file_alex) tesla = json.load(file_tesla) file_alex.close() file_tesla.close() alex['balance'] = int(alex['balance']) - 9500000 - 9500000 * 0.05 tesla['balance'] = int(tesla['balance']) + 9500000 file_alex = open(user_data['alex'], 'w') file_tesla = open(user_data['tesla_company'] , 'w') json.dump(alex, file_alex) json.dump(tesla, file_tesla) file_alex.close() file_tesla.close() else: print("没有此选项")
def inner(): user_data = modular_mod.file_info( 'D:\\python_Study\\python入门第四章\\user_data') frequency = 1 while frequency < 4: user_name = input("请输入用户名:") user_passwd = input("请输入密码:") if user_name in user_data: file = open(user_data[user_name]) user_info = json.load(file) file.close() if user_info['status'] == 0: if time.time() < time.mktime( time.strptime(user_info['expire_date'], "%Y-%m-%d")): user_passwd = hashlib.md5(user_passwd.encode('utf-8')) user_passwd = user_passwd.hexdigest() if user_passwd == user_info['password']: print('登陆成功') frequency += 4 return funck() else: if frequency == 3: user_info['status'] = 1 file = open(user_data[user_name], 'w') json.dump(user_info, file) file.close() print("密码错误3次,用户已锁定") break frequency += 1 print(frequency) continue else: print('您的密码已过期') break else: print("您的用户已锁定") break else: print("用户不存在") break
import json, hashlib, modular_mod, time user_data = modular_mod.file_info('user_data') """ 加密用户文件密码 """ # for i in user_data: # file = open(user_data[i]) # user_info = json.load(file) # file.close() # md5_mod = hashlib.md5(user_info["password"].encode("utf-8")) # user_info["password"] = md5_mod.hexdigest() # file = open(user_data[i], 'w') # json.dump(user_info, file) # print(user_data) def user_verification(funck): frequency = 1 while True: user_name = input("请输入用户名:") user_passwd = input("请输入密码:") if user_name in user_data: file = open(user_data[user_name]) user_info = json.load(file) file.close() if user_info['status'] == 0: if time.time() < time.mktime(time.strptime(user_info['expire_date'], "%Y-%m-%d")): user_passwd = hashlib.md5(user_passwd.encode('utf-8')) user_passwd = user_passwd.hexdigest() if user_passwd == user_info['password']:
写一个用户登录验证程序,文件名account.json,内容如下 {“expire_date”: “2021-01-01”, “id”: 1234, “status”: 0, “pay_day”: 22, “password”: “abc”} 根据用户输入的用户名&密码,找到对应的json文件,把数据加载出来进行验证 用户名为json文件名,密码为 password。 判断是否过期,与expire_date进行对比。 登陆成功后,打印“登陆成功”,三次登陆失败,status值改为1,并且锁定账号。 """ import json, time, modular_mod # 生成用户数据文件 # name_data = {"expire_date": "2021-01-01", "id": 1234, "status": 0, "pay_day": 22, "password": "******"} # file = open('user_data/Yasin', 'w') # json.dump(name_data, file) user_data = modular_mod.file_info('payment/user_data') frequency = 1 while True: user_name = input("请输入用户名:") user_passwd = input("请输入密码:") if user_name in user_data: file = open(user_data[user_name]) user_info = json.load(file) file.close() if user_info['status'] == 0: if time.time() < time.mktime( time.strptime(user_info['expire_date'], "%Y-%m-%d")): if user_passwd == user_info['password']: print('登陆成功')