我对编码和解码还比较陌生,实际上我完全没有任何经验。

我想知道,如何将Python 3中的字典解码为无法读取的格式,从而阻止某人在程序外部对其进行修改?
同样,我该如何从该文件中读取并对字典进行编码呢?

我的测试代码现在仅写入和读取纯文本文件。

import ast

myDict = {}

#Writer
fileModifier = open('file.txt', 'w')
fileModifier.write(str(myDict)))
fileModifier.close()

#Reader
fileModifier = open('file.txt', 'r')
myDict = ast.literal_eval(fileModifier.read())
fileModifier.close()

最佳答案

根据字典的内容,您可以使用jsonpickle之类的编码库(用于存储我的复杂python数据结构)。

这是一个使用json的示例,要使用pickle,只需将json的所有实例替换为pickle,就可以了。

import json

myDict = {}

#Writer
fileModifier = open('file.txt', 'w'):
json.dump(myDict, fileModifier)
fileModifier.close()

#Reader
fileModifier = open('file.txt', 'r'):
myDict = json.load(fileModifier)
fileModifier.close()

08-07 23:46