Создание двух не вложенных объектов в одном тексте с использованием дерева элементов с 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)

0 ответов

Другие вопросы по тегам