我有不同的XML文件和一些标记。当我想从XML文件中附加关键字时,我不能用相同的结构附加它们。关键字是列表,所以我需要一个列表列表来附加它们。当我尝试dictionary方法时,我只为每个id索引一个标记,而不是整个列表。你知道吗
我试着用元组和zip来实现这一点,但是得到了相同的结果,每个id有一个标记
这是用于检索关键字的基本代码。你知道吗
keywords = [[] for i in range (4)]
for infil in glob.glob( os.path.join(path, '*.xml') ):
tree = et.parse(infil)
root = tree.getroot()
for keyword in root.find(".//keywords"):
if keyword.text is not None:
keywords.append(keyword.text)
我希望有这样的输出,但我只有一个列表,而不是列表列表。你知道吗
{'symbol': ['CEDAW/SP/1998/1',
'CEDAW/SP/1998/2',
'CEDAW/SP/1998/3',
'CEDAW/SP/1998/4'],
'jobno': ['N9801528', 'N9802769', 'N9801085', 'N9812464'],
'dat': ['19980121', '19980206', '19980111', '19980501'],
'language': ['English', 'English', 'English', 'English'],
'keywords': [(['AGENDA'],
["WOMEN'S STATUS",
'TREATIES',
'SIGNATURES, ACCESSIONS, RATIFICATIONS',
'RESERVATIONS AND DECLARATIONS',
'GENDER DISCRIMINATION'],
['ELECTION OF MEMBERS', 'BIOGRAPHY'],
["WOMEN'S RIGHTS", "WOMEN'S STATUS", 'PERIODIC REPORTS'])]}
似乎您只指定要附加到的顶级列表。所以当你做
[[], [], [], []].append(1)
的时候,你会得到[[], [], [], [], 1]
。你知道吗需要指定内部列表,如
list[i].append(keyword.text)
,因此需要以某种方式获取索引。你知道吗相关问题 更多 >
编程相关推荐