Python解析JSON數(shù)據(jù)的示例代碼
1、有如下 JSON 數(shù)據(jù),存放在 data.json 文件:
[{"id":1, "name": "小王", "gender": "male", "score": 96.8}, {"id":2, "name": "小婷", "gender": "female", "score": 95.5}, {"id":3, "name": "小崔", "gender": "male", "score": 80.5}]
2、寫一個(gè) python 腳本(test1.py)解析這個(gè)文件:
# 導(dǎo)入 python 內(nèi)置的 json 模塊 import json # 讀取 JSON 文件 input_path = r"C:\Users\Administrator\Desktop\py\study\data.json" # 解析完的 JSON 數(shù)據(jù)存放的輸出文件 output_path = r"C:\Users\Administrator\Desktop\py\study\result.txt" # 以只讀(r:read)的方式打開 輸入文件 with open(input_path, 'r', encoding='utf-8') as file: # 將 JSON 數(shù)據(jù)加載到變量 data 中 data = json.load(file) # 以追加 (a:append) 的方式打開 輸出文件 output_file=open(output_path, 'a', encoding='utf-8') # 如果 JSON 數(shù)據(jù)是一個(gè)列表,可以遍歷列表中的元素 if isinstance(data, list): # enumerate 函數(shù)可以方便地同時(shí)獲取索引(i)和元素值(item) for i, item in enumerate(data): # \n 轉(zhuǎn)義字符,換行的意思 i 是個(gè)數(shù)字,需要用 str() 函數(shù)轉(zhuǎn)換為字符串類型 # 打印在屏幕 print('\n'+str(i+1)+'、'+item['name']+'的個(gè)人資料') # 輸出在文件 output_file.write('\n'+str(i+1)+'、'+item['name']+'的個(gè)人資料') output_file.write('\n 性別:'+item['gender']) output_file.write('\n 得分:'+str(item['score'])) # 關(guān)閉文件,防止資源泄露 output_file.close()
3、在腳本所在路徑,打開 powershell.exe,運(yùn)行這個(gè)腳本:
result.txt 輸出數(shù)據(jù)如下:
像這種簡單的腳本程序,現(xiàn)在都可以叫 AI (比如豆包) 幫我們寫:
4、擴(kuò)展:
字符串前面加 r 是什么意思?
r/R 字符串前面加大R或者小r,是原始字符串。所有的字符串都是直接按照字面的意思來使用,沒有轉(zhuǎn)義特殊或不能打印的字符。
我們知道,\ 反斜杠在python中是轉(zhuǎn)義字符,比如 \n 就是 換行。轉(zhuǎn)換了原來 n 字符的原始意思,變?yōu)?換行。
print('n') 輸出 n print('\n') 輸出換行
而 window 系統(tǒng)中,磁盤路徑,又都是用 \ 反斜杠表示的,
如果直接把它作為文件路徑,python 會(huì)報(bào)錯(cuò):
有兩種解決方式:
1)\\ 兩個(gè)反斜杠,字面意思,以 \ 轉(zhuǎn)義掉原來 \ 轉(zhuǎn)義的含義,變?yōu)檩敵?\
但這畢竟比較麻煩,所以有第二種方法
2)在字符串前面加 r,忽略掉字符串里面 \ 的轉(zhuǎn)義含義,讓它原樣輸出 \
以上就是Python解析JSON數(shù)據(jù)的示例代碼的詳細(xì)內(nèi)容,更多關(guān)于Python解析JSON數(shù)據(jù)的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python中zip()方法應(yīng)用實(shí)例分析
這篇文章主要介紹了python中zip()方法的應(yīng)用,實(shí)例分析了使用zip()方法創(chuàng)建字典的相關(guān)技巧,需要的朋友可以參考下2016-04-04Python高階函數(shù)extract與extractall使用實(shí)例探究
這篇文章主要為大家介紹了Python高階函數(shù)extract與extractall使用實(shí)例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01詳細(xì)解析Python中的變量的數(shù)據(jù)類型
這篇文章主要介紹了詳細(xì)解析Python中的變量的數(shù)據(jù)類型,是Python學(xué)習(xí)當(dāng)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-05-05