json模块

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)

#如果你写了一样功能,那你就要想是不是能把这个功能封装成一个函数
原文地址:https://www.cnblogs.com/cslw5566/p/8859266.html