要将txt文件中的内容快速转化为字典形式,可以使用eval()函数。
首先,在写入txt文件时,不要使用f.write()方法直接写入字典的字符串形式,而是应该将字典通过json库转化为字符串形式后再写入,这样更安全且方便后续读取。import jsonAA = {1: 'ert', '123': 6, 45: 'abc'}with open('123.txt', 'w') as f: json.dump(AA, f)
此时,在txt文件中会得到以下内容:{"1": "ert", "123": 6, "45": "abc"}
然后,我们可以使用eval()函数将字符串快速转化为字典。但是,请注意,由于eval()函数会执行字符串中的任意代码,因此在使用时需要确保字符串的安全性,以免造成安全风险。import astwith open('123.txt', 'r') as f: content = f.read() AA = ast.literal_eval(content)print(AA) # 输出:{1: 'ert', '123': 6, 45: 'abc'}
在上述代码中,我们使用了ast模块的literal_eval()函数,它会将字符串转化为其对应的Python表达式,而不会执行任意代码,从而提高了安全性。
总结一下:将字典写入txt文件时,可使用json库的dump()函数进行序列化;读取txt文件并将内容转化为字典时,可使用ast模块的literal_eval()函数进行安全的字符串转换操作。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 |