首頁  >  文章  >  後端開發  >  JSON在Python中的使用介紹

JSON在Python中的使用介紹

coldplay.xixi
coldplay.xixi轉載
2020-09-01 17:42:031877瀏覽

JSON在Python中的使用介紹

相關學習推薦:python影片

JSON介紹

JSON(JavaScript Object Notation) 是一種輕量級的資料交換格式。易於人閱讀和編寫。同時也易於機器解析和生成。它是基於JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的子集。 JSON採用完全獨立於語言的文字格式,但也使用了類似C語言家族的習慣(包括C, C , C#, Java, JavaScript, Perl, Python等)。這些特性使JSON成為理想的資料交換語言。

JSON的兩個結構

  1. 「名稱/值」對的集合(A collection of name/value pairs)。在不同的語言中,它被理解為物件(object),紀錄(record),結構(struct),字典(dictionary),哈希表(hash table),有鍵列表(keyed list),或關聯數組(associative array)。

  2. 值的有序列表(An ordered list of values)。在大部分語言中,它被理解為數組(array)。

JSON在Python中的使用

在Python中操作JSON時需要引入json標準函式庫。

import json

類型轉換

#Python類型轉JSON:

json. dump()

#1.Python的dict型別轉JSON
person_dict = {'name': 'pig', 'age': 18, 'sex': 'man', ' hometown': '江西撫州'}

indent參數為縮排空格數

person_dict_json = json.dumps(person_dict, indent=4)print(person_dict_json, ' \n')

2.Python的列表類型轉JSON

person_list = ['pig', 18, 'man', '江西撫州']person_list_json = json.dumps(person_list)print(person_list_json, '\n')

3、Python的物件類型轉JSON

person_obj = Person('pig', 18 , 'man', '江西撫州')

中間的匿名函式是獲得物件所有屬性的字典形式

person_obj_json = json.dumps(person_obj, default= lambda obj: obj.dict, indent=4)print(person_obj_json, '\n')

JSON轉Python類型:

json.loads( )

4、JSON轉Python的dict型別

person_json = '{ “name”: “pig”,”age”: 18, “sex ”: “man”, “hometown”: “江西撫州”}'
person_json_dict = json.loads(person_json)print(type(person_json_dict), '\n')

#5、JSON轉Python的列表類型

person_json2 = '[“pig”, 18, “man”, “江西撫州”]'
person_json_list = json.loads(person_json2)print(type( person_json_list), '\n')

6、JSON轉Python的自訂物件類型

person_json = '{ “name”: “pig”,”age ”: 18, “sex”: “man”, “hometown”: “江西撫州”}'

object_hook參數是將dict物件轉換為自訂物件

person_json_obj = json.loads(person_json, object_hook=lambda d: Person(d['name'], d['age'], d['sex'], d['hometown']))print(type(person_json_obj ), '\n')

Python與JSON資料型別對應表


JSON Python
#object dict
#array list
string str
number int,long,float
true,false True,False
null

###################################################################################家夫###None##################需要注意的點#########JSON的鍵名和字串都必須使用雙引號引起來,而Python中單引號也可以表示為字串,所以這是比較容易犯的錯誤! ######Python類型與JSON互相轉換的時候到底是用load/dump還是用loads\dumps? ######不加s的方法入參多了一個fp表示filepath,最後多了一個寫入檔案的操作。 ######所以我們在記憶的時候可以這樣記憶:######加上s表示轉成字串(str),不加s表示轉成檔案。 #########相關推薦:###程式設計影片課程#########

以上是JSON在Python中的使用介紹的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:learnku.com。如有侵權,請聯絡admin@php.cn刪除