Создание двух не вложенных объектов в одном тексте с использованием дерева элементов с python
У меня есть текст для преобразования из Excel в XML, добавив объекты "Scope" и "Cue" к некоторым частям этого текста.
Когда присутствует объект "Cue", должен присутствовать объект "Scope". Однако они не являются вложенными: они могут находиться в разных частях текста (другими словами, "Scope" не находится в "Cue" или наоборот). Оба объекта созданы функциями mark_scope(value)
а также mark_cue(value)
которые работают нормально. я использую ElementTree
строить объекты.
Я могу создать XML-файл, текст которого помечен как "Scope" или "Cue", но не оба, что мне и нужно. Я пытался использовать "и" для передачи текста сначала через mark_scope
а затем через mark_cue
но я получаю следующую ошибку:
FutureWarning: поведение этого метода изменится в будущих версиях. Вместо этого используйте специальный тест "len(elem)" или "elem is None". element = make_text(значение) и make_cue(значение)
Вот раздел моей программы, который не работает (я не хочу публиковать всю программу сейчас, потому что она слишком длинная, но я буду рад сделать это, если вам понадобится эта информация).
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)