python對json格式原檔案追加內容
python對json格式原檔案追加內容
之前有個需求:
要求爬取的資料是json格式的;json格式在 網路資料傳輸中使用很廣泛;
類似於python的字典格式;其本質是字串
但是呢,如果稍微不注意我們會發現我們儲存的格式
不是特別正確會出現如下格式:
{"a": {"password": "123", "status": false, "timeout": 1555380013.9477446}}
{"b": {"password": "123", "status": false, "timeout": 1555380013.9477446}}
{"c": {"password": "123", "status": false, "timeout": 1555380013.9477446}}
{"d": {"password": "123", "status": false, "timeout": 1555380013.9477446}}
這樣的話 使用json格式去載入檔案的話就會報錯
從網上找了很多例子
但是沒有成功;
今天自己偶然的機會,又看了下python操作檔案基礎;這個方法或許可以解決:
直接上程式碼:(方便以後要讀取該json檔案的人,減少程式碼量)
import json
with open('test2.json','a+',encoding="utf-8") as f:
f.seek(0) # 因為是追加方式開啟,預設偏移量再最後面,我們調整到開頭
if f.read() =='': # 判斷是否為空,如果為空的話建立一個新的字典格式
print('執行了嗎')
data = {}
else:
f.seek(0)
data = json.load(f)
print(data)
data['a']="我爸是趙四"
data['b']="我爸是李剛" # 可以在第二遍執行時修改一下看看效果
data['e']="我爸是李剛"
data['f'] = {'a':'巢狀啊'}
print(data)
f.seek(0)# 設定檔案當前位置 0代表開始處 其實有兩個引數 offset,whence (whence常用有三個引數0,1,2;0 代表從檔案開頭開始算起,1 代表從當前位置開始算起,2 代表從檔案末尾算起。)
# 如果操作成功,則返回新的檔案位置,如果操作失敗,則函式返回 -1。
f.truncate() # 從開頭截斷,截斷檔案為size個字元,無參代表 從當前位置截斷,截斷之後後面的所有字元都被刪除
json.dump(data,f,indent=2,ensure_ascii=False)
第一次執行:
修改後第二次執行:新增內容
相關文章
- java檔案相關(檔案追加內容、檔案內容清空、檔案內容讀取)Java
- node中給檔案追加內容
- 追加寫入json檔案JSON
- 檔案內容對比工具
- activiti 漢化 stencilset.json 檔案內容JSON
- python中修改檔案行內容Python
- python操作檔案寫入內容Python
- 讀取.net core配置檔案appsetting.json內容APPJSON
- 如何透過Python將JSON格式檔案匯入redis?PythonJSONRedis
- Java HDFS API 追加檔案寫入內容異常問題的解決JavaAPI
- python 檔案操作(二) 替換性修改檔案內容Python
- npm-package-json-lint 是一個用於檢查 package.json 檔案格式和內容規範的 npm 包。NPMPackageJSON
- Angular 專案裡 angular.json 檔案內容的學習筆記AngularJSON筆記
- 如何將Excel檔案解析為json格式ExcelJSON
- python實現修改xml檔案內容詳解PythonXML
- python 儲存檔案jsonPythonJSON
- 檔案內容比較
- vim內替換檔案內容
- 如何使用python指令碼定時清空檔案內容?Python指令碼
- python---json檔案寫入PythonJSON
- Java對txt檔案內容的增刪該查操作Java
- git檢視檔案內容Git
- 使用ln同步檔案內容,支援忽略檔案
- vscode如何更改檔案語言模式為json格式VSCode模式JSON
- Web API對application/json內容型別的CORS支援WebAPIAPPJSON型別CORS
- Shell 命令求兩個檔案每行對比的相同內容
- vite vue-cli 讀取檔案原始內容 使用base64內容的檔案ViteVue
- Python進階,ConfigParser:Python中對於ini格式的配置檔案的使用Python
- 【python012】Python根據頁碼處理PDF檔案的內容Python
- python中按照資料夾中檔案的排列順序讀取檔案內容Python
- mybatis讀取properties檔案內容MyBatis
- 實用解析dmp檔案內容
- 命令列技巧:分割檔案內容命令列
- ftp上直接修改檔案內容FTP
- 使用GeoTools解析shp檔案內容
- linux-批次修改檔案內容Linux
- 搜尋本地pdf檔案內容
- php獲取xml檔案內容PHPXML