我有一些文本要从 excel 转换为 xml,将对象“Scope”和“Cue”添加到该文本的某些部分。
当对象“Cue”存在时,对象“Scope”必须存在。但是,它们不是嵌套的:它们可以位于文本的不同部分(换句话说,“Scope”不在“Cue”之内,反之亦然)。这两个对象都是由函数创建的,mark_scope(value)
并且mark_cue(value)
工作正常。我ElementTree
用来构建对象。
我可以创建一个 xml 文件,其中的文本标记为“Scope”或“Cue”,但不能同时标记为“Scope”或“Cue”,这正是我所需要的。我尝试使用“and”先传递文本mark_scope
,然后再传递文本,mark_cue
但出现以下错误:
FutureWarning:此方法的行为将在未来版本中发生变化。改用特定的 'len(elem)' 或 'elem is not None' 测试。element = make_text(value) 和 make_cue(value)
这是我的程序中不起作用的部分(我现在不想发布整个程序,因为它太长了,但是如果您需要这些信息,我很乐意这样做)。
for row in excel_data:
tweet = ET.Element("Tweet")
for key in row:
value = row[key]
element = None
if key is 'Text':
element = make_text(value) and make_cue(value)
else:
element = ET.Element(key)
element.text = unicode(value)
tweet.append(element)
corpus.append(tweet)