从文本文件到字典
从文本文件到字典
我遇到了一些麻烦。我有一个包含如下内容的 .txt 文件:
{'x': '1', 'y': 's'}
我想将其导入到字典中。我先前使用了这段代码,但它不起作用:
import json database = {} f = open('ds.txt','r') def load(): database=json.load(open("ds.txt")) print(database) load()
错误如下:
Traceback (most recent call last): File "C:\Users\tan\Downloads\Compressed\project2\ct.py", line 11, in load() File "C:\Users\tan\Downloads\Compressed\project2\ct.py", line 6, in load database=json.load(open("ds.txt")) File "C:\Users\tan\AppData\Local\Programs\Python\Python35-32\lib\json\__init__.py", line 268, in load parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw) File "C:\Users\tan\AppData\Local\Programs\Python\Python35-32\lib\json\__init__.py", line 319, in loads return _default_decoder.decode(s) File "C:\Users\tan\AppData\Local\Programs\Python\Python35-32\lib\json\decoder.py", line 339, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "C:\Users\tan\AppData\Local\Programs\Python\Python35-32\lib\json\decoder.py", line 355, in raw_decode obj, end = self.scan_once(s, idx) json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 1 column 2 (char 1)
我也尝试了这个,但我不认为它真的起作用:
database={} f=open("ds.txt","r") def load(): o= f.read() database=o print(database) load()
这段代码属于一个大代码块,所以如果需要整体代码来回答我的问题,请告诉我。
谢谢。
admin 更改状态以发布 2023年5月24日
尝试这个:
import ast database = {} f=open("ds.txt", "r") def load(): return ast.literal_eval(str(f.read())) database = load() print(database['y'])