не Безопасно ли проверить, является ли переменная myvar
не-None значение просто:Проверьте XML ElementTree узел None/Ложные
if myvar:
print('Not None detected')
Я спрашиваю это потому, что у меня есть переменная и проверки, является ли переменная не была None
просто if variable:
, но проверка не удалась. Переменная содержит некоторые данные, но она проверяет значение False в if
.
Полный код:
from xml.etree import ElementTree as ElementTree
root = ElementTree.fromstring('Some xml string')
parameters = root.find('Some Tag')
udh = parameters.find('UDH')
if udh and udh.text: # In this line the check is failing, though the udh variable has value: <Element 'UDH' at 0x7ff614337208>
udh = udh.text
# Other code
else:
print('No UDH!') # Getting this output
Это на самом деле неправильно. '' if myvar: '' при условии, что '' myvar'' '' None'' на самом деле не будет оцениваться '' True'', и поэтому ваш образец не будет работать. Однако лучше использовать форму: '' если myvar не является None: '' или '', если myvar is None: '' –
Был здесь: http://stackoverflow.com/questions/3965104/not-none -test-in-python – ka2m
Разве ваш чек не работает, потому что в udh нет текста? Это может быть пустой узел XML. – Midnighter