python學習之儲存資料

2021-09-05 10:15:28 字數 2689 閱讀 9914

使用模組json來儲存儲存使用者資料。儲存dump,載入load

1.使用json.dump()和json.load()

編寫乙個儲存一組數字的程式

#儲存資料

import json #匯入模組

numbers=[1,2,3,4,5,6] #建立數字列表

filename='numbers.json'#生成檔案,.json為拓展名

with open(filename,'w') as f_obj: #開啟檔案

json.dump(numbers,f_obj) #將數字列表numbers存到檔案f_ojb(numbers.json)中

json.dump()有兩個引數,乙個是要儲存的資料,乙個是用於儲存資料的檔案物件

#將數字讀到記憶體中

import json #匯入模組

filename='numbers.json'#將數字列表以json格式存在檔案,檔名filename

with open(filename) as f_obj:

numbers = json.load(f_obj)#資料載入出來

print(numbers)

[1, 2, 3, 4, 5, 6]

2.儲存和讀取使用者生成的資料

import json

username=input("what is you name ?")

filename="username.json"

with open(filename,"w") as f_obj:

json.dump(username,f_obj) #儲存

print("we will rememner you when you come back , "+username)

what is you name ?小小慧

we will rememner you when you come back , 小小慧

#對被儲存的名字,發出問候

import json

filename="username.json" #程式使用了上面的檔案內容

with open(filename) as f_obj:

username=json.load(f_obj)#載入

print("welcome back, "+username)

welcome back, 小小慧

#將以上兩個程式合併 try—except

import json

filename="username_2.json"

#如果使用者儲存過名字就載入問候他否則就提示使用者輸入並存起來

try: #如果username_2.json檔案存在,就載入問候他,

with open(filename) as f_obj:

uersname=json.load(f_obj)

except filenotfounderror: #檔案不存在,就提示輸入

username=input("what is you name ?")

with open(filename,"w") as f_obj:

json.dump(username,f_obj) #儲存

print("we will rememner you when you come back , "+username)

else:

print("welcome back, "+username)#檔案存在

#重構為函式,各司其職,**更加清晰易懂

import json

def get_sorted_username():

'''如果儲存了使用者就獲取他'''

filename="username2.json"

try:

with open(filename) as f_object:

username2=json.load(f_object)

except filenotfounderror:

return none

else:

return username2

def get_new_username():

username2=input("what is you name ?")

filename="username2.json"

with open(filename,"w") as f_object:

json.dump(username2,f_object) #儲存

return username2

def greet_user():

'''問候使用者並指出名字'''

username2=get_sorted_username()

if username2:

print("welcome back, "+username2)

else:

username2=get_new_username()

print("we will rememner you when you come back , "+username2)

greet_user()

第一次執行,會詢問名字,第二次執行會問候,。要編寫出清晰而且易於維護和拓展的**,這種劃分的工作必不可少。

Python之pandas資料載入 儲存

0.輸入與輸出大致可分為三類 0.1 讀取文字檔案和其他更好效的磁碟儲存格式 2.2 使用資料庫中的資料 0.3 利用web api操作網路資源1.讀取文字檔案和其他更好效的磁碟儲存格式pandas提供了一些用於將 型資料讀取為dataframe物件的函式。1.1 pandas中的解析函式 read...

Python之pandas資料載入 儲存

0.輸入與輸出大致可分為三類 0.1 讀取文字檔案和其他更好效的磁碟儲存格式 2.2 使用資料庫中的資料 0.3 利用web api操作網路資源1.讀取文字檔案和其他更好效的磁碟儲存格式pandas提供了一些用於將 型資料讀取為dataframe物件的函式。1.1 pandas中的解析函式 read...

python學習筆記7 資料儲存

import json persons with open person.json w as fp json.dump persons,fp,ensure ascii false json在dump時只能存放ascii字元,所以用ensure ascii false關閉這個特性只有基本資料型別才能轉...