JSON是什么?
- JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)是一种轻量级的数据交换格式,易于人阅读和编写。
- JSON 是轻量级的文本数据交换格式
- JSON 独立于语言 *
- JSON 具有自我描述性,更易理解
* JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。
import json
json.load() # 将一个存储在文件中的json对象(str)转化为相对应的python对象
json.loads() # 将一个json对象(str)转化为相对应的python对象
json.dump() # 将python的对象转化为对应的json对象(str),并存放在文件中
json.dumps() # 将python的对象转化为对应的json对象(str)
#加不加s区别主要在于 例如爬取网页时往往返回的不是一个.json的文件写在硬盘 而是直接在内存中 此时需要使用加s的json 而读取硬盘的本地数据不需要加s
import json
number = [2,3,4,5,6]
filename = 'D:\\numtest.json' #关于python中文件的路径 win原生的单\是不行的 / // \\ 都是可以的
with open(filename,'w') as f_obj:
json.dump(number,f_obj)
可以看到我们创建了一个json文件
import json
filename = 'D:\\numtest.json'
with open(filename,) as f_obj:
num = json.load(f_obj)
print(num)
我们可以看到我们读取了json文件
用vs打开
我们来结合异常处理 写一个模拟用户登录的场景
import json
filename = 'D://user.json'
try:
with open(filename) as obj:
username = json.load(obj)
except FileNotFoundError:
username = input('what is your name?')
with open(filename,'w') as obj:
json.dump(username,obj)
print('get your name --- ' + username)
else :
print('welcome , ' + username)