在Python中使用xmltodict的MemoryError

2024-05-20 05:10:19 发布

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

我试图将Saliva Metabolites数据集中的一个XML文件HMDB解析为一个字典列表。为此,请使用xmldict包。我尝试创建的数据格式和输出结构位于previews question posted中的第一个代码段落中

代码如下:

# Import packages
import xml.etree.ElementTree as et
import xmltodict

# load data
data1 = et.parse('D:/path/To/Projects/HMDB/DataSets/saliva_metabolites/saliva_metabolites.xml')
root = data1.getroot()

xmlstr = et.tostring(root, encoding='utf-8', method='xml')
data_dict = dict(xmltodict.parse(xmlstr))

现在,当尝试访问特定密钥时,如:

>> data_dict['ns0:hmdb']
Traceback (most recent call last):
  File "<input>", line 1, in <module>
MemoryError

我正在使用Pycharm,在对象data_dict旁边写着:Unable to get repr for <class 'dict'>

不确定我的系统还需要什么其他信息,除了:

>> print(sys.version)
3.8.5 (tags/v3.8.5:580fbb0, Jul 20 2020, 15:43:08) [MSC v.1926 32 bit (Intel)]

如有任何想法、提示或线索,将不胜感激


Tags: 代码importdataparserootxmldictet