欧美性猛交xxx嘿人猛交_又色又爽又高潮免费观看_精品国产一区二区三区久久影院_青娱乐极品视觉盛宴国产视频

技術頻道導航
HTML/CSS
.NET技術
IIS技術
PHP技術
Js/JQuery
Photoshop
Fireworks
服務器技術
操作系統
網站運營

贊助商

分類目錄

贊助商

最新文章

搜索

json.dump()將Python字典對象轉換為JSON格式寫入文件

作者:admin    時間:2022-1-12 10:30:23    瀏覽:

大多數情況下,當你執行 GET 請求時,你會收到 JSON 格式的響應,你可以將 JSON 響應存儲在文件中以供將來使用或供底層系統使用。

 json.dump()將Python字典對象轉換為JSON格式寫入文件
json.dump()將Python字典對象轉換為JSON格式寫入文件

例如,你有一個列表或字典或任何 Python 對象中的數據,并且你希望將其編碼并以 JSON 的形式存儲在一個文件中。

在此示例中,我們將 Python 字典轉換為 JSON 格式并將其寫入文件。

import json

# assume you have the following dictionary
developer = {
    "name": "admin",
    "salary": 9000,
    "email": "admin@webkaka.com"
}
print("Started writing JSON data into a file")
with open("developer.admin", "w") as write_file:
    json.dump(developer, write_file) # encode dict into JSON
print("Done writing JSON data into .json file")

輸出:

Started writing JSON data into a file
Done writing JSON data into developerDetail.json file

 使用 Python 編寫 JSON 編碼數據后的文件
使用 Python 編寫 JSON 編碼數據后的文件

json.dump()的語法

json.dump(obj, fp, *, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, default=None, sort_keys=False, **kw)

用途:用于將 Python 對象作為 JSON 格式的數據寫入文件。

使用的參數:

  • obj 是一個Python可序列化對象,你希望將其轉換為JSON格式。
  • fp是一個文件指針,用于將 JSON 格式的數據寫入文件。Python json 模塊總是產生字符串對象,而不是字節對象,因此,fp.write()必須支持字符串輸入。
  • 如果skipkeys為真(默認值:假),則不屬于基本類型的字典鍵 (str, int, float, bool, None) 將被跳過而不是引發一個 TypeError。例如,如果你的字典鍵之一是自定義 Python 對象,則在將字典轉換為 JSON 時將省略該鍵。
  • 如果ensure_ascii為 true(默認值),則保證輸出所有傳入的非 ASCII 字符都已轉義。如果ensure_ascii為 false,這些字符將按原樣輸出。
  • allow_nan默認情況下為 True,因此將使用它們的 JavaScript 等效項(NaN、Infinity、-Infinity)。如果為 False,則序列化超出范圍的浮點值(nan、inf、-inf)將是一個 ValueError。
  • indent參數用于漂亮地打印 JSON 以使其更具可讀性。默認值為(', ', ': '). 要獲得最緊湊的 JSON 表示,你應該使用(',', ':') 消除空格。
  • 如果sort_keys為真(默認:假),則字典的輸出將按鍵排序。

將縮進和漂亮打印的 JSON 數據寫入文件

如果用戶想要讀取一個 JSON 文件,那么它必須是可讀且組織良好的,因此使用它的人將對數據結構有更好的理解。dump() 方法提供以下參數來漂亮打印 JSON 數據。

  • 該縮進參數指定在一行的開頭使用的空間。
  • json.dump() 方法的separator參數,你可以指定鍵和值之間的任何分隔符。
  • sort_keys通過按鍵JSON數據進行排序。

讓我們看看如何將打印精美的 JSON 數據寫入文件。

import json

developer = {
    "name": "admin",
    "salary": 9000,
    "skills": ["Raspberry pi", "Machine Learning", "Web Development"],
    "email": "admin@webkaka.com"
}

with open("developerPrettyPrint.json", "w") as write_file:
    json.dump(developer, write_file, indent=4, separators=(", ", ": "), sort_keys=True)
print("Done writing pretty printed JSON data into a file")

輸出:

Done writing pretty printed JSON data into a file

 寫入漂亮打印的 JSON 數據后的文件
寫入漂亮打印的 JSON 數據后的文件

 

通過更改 JSON 鍵值分隔符來節省文件空間的緊湊編碼

如果你不是在讀取文件,而只需要將 JSON 數據寫入文件以供底層系統或應用程序使用,則可以通過緊湊編碼將 JSON 數據寫入文件。

我們可以通過更改 JSON 鍵值分隔符將 JSON 數據寫入文件。你可以根據需要更改 JSON 表示。使用separator參數,你可以指定鍵和值之間的任何分隔符。

為了限制 JSON 文件的大小,我們可以刪除 JSON 鍵值之間的額外間距進行緊湊編碼(separators=(',', ':'))。使用此分隔符,我們可以從 JSON 中刪除空格,以使 JSON 更緊湊,并節省通過 HTTP 發送的字節。

現在,讓我們看看這個例子。

import json

developer_dict = {
    "name": "admin",
    "salary": 9000,
    "skills": ["Raspberry pi", "Machine Learning", "Web Development"],
    "companies": ["Google", "Facebook", "IBM"],
    "email": "admin@webkaka.com"
}

print("Started writing compact JSON data into a file")
with open("developerDetailCompact.json", "w") as write_file:
    json.dump(developer_dict, write_file, separators=(',', ':'))
print("Done writing compact JSON data into json file")

輸出:

Started writing compact JSON data into a file
Done writing compact JSON data into .json file

文件內容:

{"name":"admin","salary":9000,"skills":["Raspberry pi","Machine Learning","Web Development"],"companies":["Google","Facebook","IBM"],"email":admin@webkaka.com}

您可能對以下文章也感興趣

標簽: Python  
x