list = []
while True:
list.append(input())
print(list)
這允許我添加任何我想要的列表。但是,有沒有辦法讓我可以將更改保留在列表中,以便稍後運行程序時,我之前編寫的所有內容都將列在列表中?Python保存列表更改
編輯:如果它的事項,我用PyCharm編碼和運行我progams
list = []
while True:
list.append(input())
print(list)
這允許我添加任何我想要的列表。但是,有沒有辦法讓我可以將更改保留在列表中,以便稍後運行程序時,我之前編寫的所有內容都將列在列表中?Python保存列表更改
編輯:如果它的事項,我用PyCharm編碼和運行我progams
可以使用json
這裏。
import json
try:
list = json.load(open("database.json"))
except:
list = []
while True:
try:
list.append(input())
print(list)
except KeyboardInterrupt:
json.dump(list, open('database.json', 'w'))
此存儲內容在一個名爲database.json,你可以用CTRL+C
Gupta我嘗試過,但是當我第二次運行程序時,列表內容已被刪除 –
您正在使用關閉程序嗎? –
PyCharm,我希望能夠在PyCharm中關閉它 –
結束程序,您將需要一個持久層即文件系統,數據庫,pickle
,shelve
等在那裏你一旦程序終止,可以存儲list
中的數據。當您重新運行程序時,請確保它從相同的持久性存儲加載,而無需將其初始化爲[]
,這就是您將如何將附加到列表的元素存儲起來的方式。
Python提供了許多替代所描述的here
您需要先保存在某個地方的列表,然後在程序開始加載它。由於它只是一個簡單的列表,我們可以使用python pickle將其保存到磁盤,如下所示:
import pickle
try:
with open('list.p', 'rb') as f:
list = pickle.load(f)
except:
list = []
while True:
try:
list.append(input())
print(list)
except KeyboardInterrupt:
with open('list.p', 'wb') as f:
pickle.dump(list, f)
考慮將列表保存到文本文件或任何地方。然後,您可以從源加載列表並追加新記錄。 – Eduard
您需要將列表轉儲到某些持久性存儲(例如文件,數據庫表),並在程序啓動時讀取它。 – Mureinik
這可能有助於:[Python pickle/unpickle list to/from a file](http://stackoverflow.com/questions/18229082/python-pickle-unpickle-a-list-to-from-a-file) –