在您的Python 程式碼中解析Python 程式碼中解析JSON 和將其轉換為CSV 時,您會遇到「TypeError:字串索引必須是整數」錯誤。為了解決這個問題,讓我們深入研究根本問題並提供解決方案。
「TypeError:字串索引必須是整數」錯誤表示您正在嘗試使用索引存取字串類型變數。在您的情況下,您正在嘗試使用索引存取 JSON 物件的值。
例如,在您的程式碼片段中:
csv_file.writerow([item["gravatar_id"], item["position"], item["number"]])
您正在嘗試存取各種值JSON 物件中的字段,使用索引名稱,例如「gravatar_id」、「position」和“number”。但是,這些欄位不是索引,而是類似字典的物件的鍵。
要解決此錯誤並正確存取 JSON 物件的欄位值,您需要使用字典存取語法。以下是使用 JSON.loads() 函數的更正後的程式碼:
import json import csv with open('issues.json', 'r') as f: data = json.load(f) with open('issues.csv', 'wb+') as f: csv_file = csv.writer(f) csv_file.writerow(["gravatar_id", "position", "number"]) for item in data['issues']: csv_file.writerow([item.get('gravatar_id'), item.get('position'), item.get('number')])
此程式碼使用 get() 方法從類似字典的 JSON 物件中檢索指定欄位的值。
透過用正確的字典存取語法取代不正確的字串索引,您可以成功解析JSON 檔案並將所需的值提取到CSV 檔案中,而不會遇到「字串索引必須是整數”的情況錯誤。
以上是為什麼在 Python 中將 JSON 轉換為 CSV 時會出現「TypeError: String Indices Must Be Integers」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!