使用python讀寫文字檔案內容時,我們知道如果文字檔案裡的內容無規律,那麼修改起來比較麻煩。但是如果文字檔案儲存是有規律的,比如json格式,在利用python內建的函式把json格式的資料轉成python字典物件之類,操作起來則非常便捷。
閱讀本文需要對python檔案操作有簡單了解
f = open('hello.txt', mode='r', encoding='utf-8')
data = f.read()
print(type(data))
print(data)
# 輸出如下:
# # hello-world
# 你好世界
演示**文字的編碼均為utf-8為什麼要互轉呢,我們這裡主要是針對文字檔案的操作。我們讀文字檔案時讀到是字串,相應的把資料寫入文字檔案的時候,也是把字串寫入文字檔案。但是在程式中,字串不好操作,而類似字典這種型別的資料結構容易操作,所以需要字串與字典互轉。
需要用到json
模組的倆個函式,json.dumps()
和json.loads()
import json
data =
f = open('xjson.txt', 'w')
data = json.dumps(data) # 字典轉字串
f.write(data) # 寫入
f.close()
執行上面的程式,xjson.txt
裡的內容就會變成
上面**中的副檔名txt
不是必須的,換成其它文字副檔名也可以。剛開始不用先建立xjson.txt
檔案,檢查到沒有該檔案python會自動建立的。
現在假設我們已經有乙個xjson.txt
文字檔案,內容只有一行,現在我們需要把這段文字的最後一項修改成
dxing: x2018
,**演示如下:
import json
# 修改檔案裡的內容
f = open('xjson.txt', 'r+')
data2 = json.loads(f.read()) # 字串轉字典
data2['dxing'] = 'x2018'
f.seek(0) # 把檔案指標移動到頭部
# print(f.tell())
f.write(json.dumps(data2))
f.close()
可以看到非常簡單的就修改了文字檔案裡的內容。
現在我們可以利用python操作文字檔案,來時實現乙個登入小程式。要求賬號密碼儲存在檔案中,並且密碼輸入錯誤三次以後鎖定該使用者,下次使用該使用者名稱登入時,仍然處於鎖定狀態。
測試資料可以使用以下**生成。
import json
data = ,
'xsheng': ,
'csheng': ,
'vsheng':
}f = open('account.json', mode='w', encoding='utf-8')
data2 = json.dumps(data)
f.write(data2)
f.close()
生成的測試資料如下。
, "xsheng": , "csheng": , "vsheng": }
參考實現如下
import json
f = open('account.json', mode='r+', encoding='utf-8')
data = json.loads(f.read())
count = 0
while 1:
username = input('please input you username: ')
if username == 'q':
exit()
if username not in data:
print('wrong username!')
continue
if username in data:
if data[username]['lock'] == 1:
print('your account is locked! refuse to login!')
exit()
while 1:
count += 1
if count > 3:
data[username]['lock'] = 1
# print(data)
f.seek(0)
f.write(json.dumps(data))
print('your account is locked!')
exit()
print('this is your %d time try!' % count)
password = input('please input your password: ')
if data[username]['pwd'] == password:
print('welcome to login %s' % username)
exit()
elif password == 'q':
exit()
else:
print('wrong password, retry!')
continue
f.close()
python檔案操作及異常處理,json檔案操作
一 python檔案的簡單操作 1 任何時候使用檔案必須先開啟檔案,一般是用with open進行操作,單單使用open可能某些時候忘了關閉檔案。2 檔案路徑需要明確,當使用多個資料夾進行模組化呼叫的時候,還需要拼接路徑,找到父路徑。3 全部載入與逐行讀取 4 檔案寫入 檔案操作 檔案開啟和讀取方法...
python操作json資料
import json 一 讀取json資料 1.1 方法一 使用loads 方法讀取已有資料 data message json.loads data print message 1.2 方法二 使用load 方法讀取檔案資料 檔案儲存時必須位於同一行,不然直接load會報錯 with open ...
python儲存json資料,存入txt檔案
最近用python寫資料分析,然後想著我如果每次跑程式都需要一次api請求有點不太好,畢竟很多 都有限制。然後我就想著把請求的json資料,儲存到本地,沒有實時資料的需求時就使用原始資料,如果有的話就跑一下程式。下面是我的乙個示例,使用的是json的dumps方法,將dic轉化為字串格式 impor...