Я использую BeautifulSoup для синтаксического анализа XML:Синтаксический XML с BeautifulSoup и обработки отсутствует элемент
xml = """<person>
<first_name>Matt</first_name>
</person>"""
soup = BeautifulStoneSoup(xml)
first_name = soup.find('first_name').string
last_name = soup.find('last_name').string
Но у меня есть проблема, когда нет last_name, потому что она задыхается. Иногда у корма есть это, а иногда и нет. Как я могу предотвратить его удушье?
Я не хочу использовать утверждения try/except. Я также не хочу использовать выражения if/else. (Поскольку у меня есть эти утверждения, он удваивает строки уже очень длинного кода).
Есть ли способ вернуть «Нет», если нет «last_name»?
Я предпочитаю версию getattr вашего ответа, потому что я считаю, что именно то, что было создано вначале! –
Читаем, но удваиваем строки :) Еще раз спасибо alex :) – TIMEX
@alex: О, нет! В моих файлах исходного кода есть много символов перевода строки. Что бы я не сделал? – 2010-02-07 01:21:20