JSON数据类型最常用的应用场景就是API或将数据保存到.json文档中。使用Python处理这些数据会变得非常简单。
整套学习自学教程中应用的数据都是《三國志》、《真·三國無雙》系列游戏中的内容。
JSON
JSON起源
JSON全称JavaScriptObjectNotation。是处理对象文字语法的JavaScript编程语言的一个子集。JSON早已成为与语言无关的语言,并作为自己的标准存在。
JSON样例
{"data":[{"id":"1","名前":"阿会喃","寿命":"36","分類":"武官"},{"id":"2","名前":"韋昭","寿命":"70","分類":"文官"},{"id":"3","名前":"伊籍","寿命":"65","分類":"文官"}]}
Python原生支持JSON
Python带有一个内置包json,用于对JSON数据进行编码和解码。
引用方式。
importjson
JSON编码的过程通常称为序列化。该术语是指将数据转换为一系列字节通过网络存储或传输。反序列化是解码以JSON标准存储或交付的数据的交互过程。
序列化JSON
直观的转换将简单的Python对象转换为JSON。
简单的序列化示例
创建一个简单的数据库。
data={"data":[{"id":"1","名前":"阿会喃","寿命":"36","分類":"武官"},{"id":"2","名前":"韋昭","寿命":"70","分類":"文官"},{"id":"3","名前":"伊籍","寿命":"65","分類":"文官"}]}
数据直接以文本方式保存。
withopen("data_file.json","w")asf:json.dump(data,f)
数据直接以字符串的方式使用。
json_str=json.dumps(data)
JSON反序列化
在json库中使用load()和oads()用于将JSON编码数据转换为Python对象。JSON
Python--------
-----object
dictarray
liststring
strnumber(整数)
intnumber(浮点数)
floattrue
Truefalse
Falsenull
None
简单的反序列化示例
读取写入json文件的数据。
withopen("data_file.json","r")asad_file:data=json.load(ad_file)
字符串数据。
json_string="""{"data":[{"id":"1","名前":"阿会喃","寿命":"36","分類":"武官"},{"id":"2","名前":"韋昭","寿命":"70","分類":"文官"},{"id":"3","名前":"伊籍","寿命":"65","分類":"文官"}]}"""data=json.loads(json_string)
应用案例
通过互联网的数据抓取解析文本信息。
#秦皇岛煤炭网微博importquestsfrombs4importBeautifulSoupimportdatetimeurl="