从文件中的一行创建字典



我目前正在编写一段代码,它接受一个文件,其中一行是列表,另一行是字典(见下文)。是否有一种方法可以将列表或字典以字符串形式保存到文件中,并重新创建该列表/字典?我试过其他帖子,但我不认为我在寻找正确的东西,因为到目前为止,没有一个线程似乎能解决我的问题。

文件的内容如下:
(1, 2, 3, 4, 5, 6, 7, 8)
{'a': 1,'b': 2,'c': 3}

这是我认为会工作的路线(显然这只是一个近似值)

location = input("Please input your file location")    
f.open(location, 'r')    
list = location(line1)    
dict = location(line2)

谢谢!

要安全地计算包含Python文字的字符串,可以使用ast.literal_eval():

>>> from ast import literal_eval
>>> literal_eval("[1,2,3,4,5,6,7,8]")
[1, 2, 3, 4, 5, 6, 7, 8]
>>> literal_eval("{'a': 1,'b': 2,'c': 3}")
{'a': 1, 'b': 2, 'c': 3}

要读取和解析文件的前两行,执行以下命令:

from ast import literal_eval
with open(location) as f:
    L = literal_eval(f.readline())
    D = literal_eval(f.readline())

相关内容

  • 没有找到相关文章

最新更新