Python 3.6π

2024-06-11 06:43:02 发布

您现在位置:Python中文网/ 问答频道 /正文

import pickle

randomlist = []
value = input("Add: ")
randomlist.append(value)
print(randomlist)

with open("randomlist_presistence.pkl", "wb") as pickle_out:
    pickle.dump(randomlist, pickle_out)

它创建一个名为“randomloss”的文件_前存在.pkl“还有一些符号。但后来我不知道该怎么做才能解开数据。我不知道该写在哪里:

^{pr2}$

我的目标是在列表中写一些东西并保存下来。Python 3.x。谢谢。在


Tags: importaddinputvalueaswithopenout
3条回答

您可以测试文件是否存在,然后在添加额外元素之前加载它。如果文件不存在,可以像初始化列表一样初始化该列表。在

import pickle
import os  # need os.path.isfile

if os.path.isfile("randomlist_presistence.pkl"):  # check if the file exists
    with open("randomlist_presistence.pkl", "rb") as pickle_in:  # here
        randomlist = pickle.load(pickle_in)

else:
    randomlist = []

value = input("Add: ")
randomlist.append(value)
print(randomlist)

with open("randomlist_presistence.pkl", "wb") as pickle_out:
    pickle.dump(randomlist, pickle_out)

可以在中使用open函数读取pickle文件。在下面的示例中,x现在包含从pickle文件读入的列表。在

with open('randomlist_presistence.pkl', 'rb') as f:
    x = pickle.load(f)

print(x)
['testing']

Pickle是一个序列化数据的协议,即将数据转换为字符串。您可以使用这种格式来高效地保存python对象,或者做一些好事,比如将对象发送到RAM中的不同进程或网络的其他节点。没有一个确切的位置可以加载文件。只需在需要时加载它(可能在另一个程序中?)在

相关问题 更多 >