活動地址:CSDN21天學習挑戰賽
JSON的全稱是JavaScript Object Notation",是JavaScript對象表示法, 它是一種基於文本,獨立於語言的輕量級數據交換格式。
json基於文本,獨立於語言的輕量級的數據交換格式
-基於文本,是一個文本文件
-獨立於語言,不是某個語言特有的,每種編程語言都可以使用的
-輕量級,相同的數據,和其他格式相比,占用的大小比較小
-數據交換格式,後端程序員給前端的數據(json,html xml 等)
1.JSON是純文本
2.JSON具有良好的自我描述性,便於閱讀和編寫
3.JSON具有清斷的層級結構
4.有效地提升網絡傳輸效率
json 文件也是一個文本文件,就可以直接使用read( )和write() 方法
去操作文件,只是使用這兩個方法,不方便,所以對json文件有自己獨特的讀
取和寫入的方法
常用在在做測試的時候,將測試數據定義為json 文件格式,使用代碼讀取
json文件,即讀取測試數據,進行傳參(參數化)
-大括號保存對象
-中括號保存數組
-對象數組可以相互嵌套
-數據采用鍵值對標識
-多個數組由逗號分隔
1.json 文件的後綴為 .json
2.json 中主要數據類型為 對象({} 類似 python 中 字典) 和 數組([] 類似 python 中的列表),對象和數組可以互相嵌套
3.一個json 文件是一個對象或者數組( 即 json 文件的最外層要麼是一個{},要麼是一個數組[])
4. json中的對象是由鍵值對組成的,每個數據之間使用逗號隔開,但是最後
一個數據後邊不要寫逗號
5. json中的字符串必須使用雙引號
6. json中的其他數據類型
>數字類型----> int float
> string字符串 ---> str
>布爾類型true, false -----> True, False
>null ----> None
JSON的鍵必須是字符串類型,用英文雙引號擴起來
需求:
我叫小明,我今年18歲,性別男,愛好聽歌,游戲,購物,吃飯,睡覺,打豆豆,
我的居住地址為國家中國,城市北京
ptyhon -字典
json -對象
{
"name": "小明",
"age": 18,
"isMen": true,
"like": [
"聽歌",
"游戲",
"購物",
"睡覺",
"打豆豆"
],
"address": {
"country": "中國",
"city": "北京"
}
}
ctrl + alt + L 可以格式化語法
1.導包import json
2.讀打開文件
3.讀文件
json. load(文件對象)
#返回的是字典(文件中是對象)或者列表(文件中是數組)
# 1, 導入 json
import json
# 2, 讀打開文件
with open('06.json', encoding='gbk') as f:
# buf = f.read()
# print(type(buf), buf)
result = json.load(f)
print(type(result)) # <class 'dict'>
# 獲取姓名
print(result.get('name'))
# 獲取年齡
print(result.get('age'))
# 獲取城市
print(result.get('address').get('city'))
輸出結果:
<class 'dict'>
tom
18
北京