1.#可以直接建立。json文件的格式
有一定格式如:
{
"iphone":{
"color":"red",
"num":1,
"price":98.5
},
"wather":{
"num":100,
"price":1,
"color":"white"
}
}
2.如何json 转为字典
import json
#json串是一个字符串
f = open('product.json',encoding='utf-8')
res = f.read()
product_dic = json.loads(res) #把json串,变成python的数据类型 字典 loads方法 需要先读文件
# print(json.load(f)) #传一个文件对象,它会帮你读文件 bjsion可用来校验json格式
d = {
'zll':{
'addr':'北京',
'age':28
},
'ljj':{
'addr':'北京',
'age':38
}
}
fw = open('user_info.json','w',encoding='utf-8')
# dic_json = json.dumps(d,ensure_ascii=False,indent=4) #字典转成json,字典转成字符串 ensure_ascii=False解决中文 indent=4缩进4个
# fw.write(dic_json)
json.dump(d,fw,ensure_ascii=False,indent=10) #操作文件
# niuhanyang,123456,北京,13810461234,男
3.文件json #方便文件操作调用
import json
def op_data(filename,dic=None):
if dic:#写入进去
with open(filename,'w',encoding='utf-8') as fw:
json.dump(dic,fw,ensure_ascii=False,indent=4)
else:
with open(filename,encoding='utf-8') as fr:
return json.load(fr)
FILE_NAME = 'user_info.json'
all_users = op_data(FILE_NAME)
for i in range(3):
choice = input('输入,1注册,2、删除')
if choice=='1':
username = input('usenrame:')
pwd = input('pwd:')
if username not in all_users:
all_users[username]=pwd # 字典中添加
op_data(FILE_NAME,all_users)
elif choice=="2":
username = input('usenrame:')
all_users.pop(username) #根据key删除
op_data(FILE_NAME, all_users)
#如果你写了一样功能,那你就要想是不是能把这个功能封装成一个函数