用户登录注册功能
import os
import json
# 注册功能
# 1.获取执行文件所在的目录路径
base_dir = os.path.dirname(__file__) # D:/pythonProject03/day19
# 2.拼接出db目录的路径
db_dir = os.path.join(base_dir, 'db') # D:/pythonProject03/day19/db
# 3.创建db目录
if not os.path.isdir(db_dir):
os.mkdir(db_dir)
# 4.获取用户数据
username = input('username>>>:').strip()
password = input('password>>>:').strip()
# 4.1.判断用户名是否已存在
print(os.listdir(db_dir)) # ['jason.json', 'kevin.json', 'tony.json'] 方式1
user_file_path = os.path.join(db_dir, f'{username}.json') 方式2
# 5.构造用户字典
user_dict = {
'username': username,
'password': password,
'account': 15000, # 账户余额
'shop_car': [] # 购物车
}
# 6.拼接存储用户数据的文件路径
user_file_path = os.path.join(db_dir, f'{username}.json') # D:/pythonProject03/day19/db/jason.json
# 7.写入文件数据
with open(user_file_path,'w',encoding='utf8') as f:
json.dump(user_dict, f)
username = input('username>>>:').strip()
# 1.拼接上述用户名组成的文件路径
target_user_file_path = os.path.join(db_dir, f'{username}.json')
if not os.path.isfile(target_user_file_path):
print('你赶紧滚蛋 用户名都不对 搞什么飞机')
else:
password = input('password>>>:').strip()
# 2.获取用户真实数据字典
with open(target_user_file_path,'r',encoding='utf8') as f:
real_user_dict = json.load(f)
if password == real_user_dict.get('password'):
print('登录成功')
else:
print('密码错误')