使用Python讀取json文件的方法小結
使用python讀取json文件,輸出結果為字符串或python對象
如下圖,data目錄下有test.json文件

現(xiàn)在可以通過python讀取該json文件,并輸出為兩種不同類型(python對象、字符串)的數(shù)據(jù)
1.輸出為python對象,這里使用的是json模塊的load()方法
(1)輸出類型和文件內(nèi)容如下:

(2)源代碼(需要引入json庫):
import json
#定義文件路徑
path = './data/'
# 打開文件,r是讀取,encoding是指定編碼格式
with open(path + 'test.json','r',encoding = 'utf-8') as fp:
print(type(fp)) #輸出結果是 <class '_io.TextIOWrapper'> 一個文件類對象
# load()函數(shù)將fp(一個支持.read()的文件類對象,包含一個JSON文檔)反序列化為一個Python對象
data = json.load(fp)
print(type(data)) #輸出結果是 <class 'dict'> 一個python對象,json模塊會根據(jù)文件類對象自動轉為最符合的數(shù)據(jù)類型,所以這里是dict
print("\n************************************************************************************************************\n")
print(data)
print("\n************************************************************************************************************\n")
# 因為上面使用了with語句,使用 with 語句打開文件時,with 語句會創(chuàng)建一個代碼塊的上下文,并在代碼塊執(zhí)行結束后自動清理資源。通過這種方式,我們可以不用顯示調(diào)用 file.close() 來關閉文件,從而避免資源泄漏的問題。
# fp.close() 2.輸出類型為字符串,這里使用的是read()方法
(1)輸出類型和文件內(nèi)容如下:

(2)源代碼:
#文件路徑
path = './data/'
# 打開文件,r是讀取的意思,encoding是指定編碼格式
with open(path + 'test.json','r',encoding = 'utf-8') as fp:
print(type(fp)) #輸出結果是 <class '_io.TextIOWrapper'> 一個文件類對象
# read()方法將fp(一個支持.read()的文件類對象,包含一個JSON文檔)轉換成字符串
data = fp.read()
print(type(data)) #輸出結果是 <class 'str'> 字符串
print("\n************************************************************************************************************\n")
print(data)
print("\n************************************************************************************************************\n")
# 因為上面使用了with語句,使用 with 語句打開文件時,with 語句會創(chuàng)建一個代碼塊的上下文,并在代碼塊執(zhí)行結束后自動清理資源。通過這種方式,我們可以不用顯示調(diào)用 file.close() 來關閉文件,從而避免資源泄漏的問題。
# fp.close()到此這篇關于Python讀取json文件的方法小結的文章就介紹到這了,更多相關Python讀取json文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python批量修改文件夾及其子文件夾下的文件內(nèi)容
這篇文章主要為大家詳細介紹了python批量修改文件夾及其子文件夾下的文件內(nèi)容,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-03-03
Python實現(xiàn)監(jiān)控程序執(zhí)行時間并將其寫入日志的方法
這篇文章主要介紹了Python實現(xiàn)監(jiān)控程序執(zhí)行時間并將其寫入日志的方法,實例分析了Python日志操作的相關技巧,需要的朋友可以參考下2015-06-06
Python機器學習NLP自然語言處理基本操作之命名實例提取
自然語言處理(?Natural?Language?Processing,?NLP)是計算機科學領域與人工智能領域中的一個重要方向。它研究能實現(xiàn)人與計算機之間用自然語言進行有效通信的各種理論和方法2021-11-11

