Я прочитал условия «> 0», «< 60» и т. Д. Из XML-файла. Каков наилучший способ их преобразования на язык python для сравнения? Пример кода является то, что я хочу сделать:Преобразование строки "> 0" в python> 0
if str == ">0":
if x > 0:
print "yes"
else:
print "no"
elif str == "<60":
if x < 60:
print "yes"
...
Ударьте меня на это, вот-вот опубликуйте тот же базовый ответ. Я бы пропустил регулярное выражение для простого случая, хотя я признаю, что он был каким-то хакивым в любом случае; 'digits = somestr.lstrip ('><=')', 'op = somestr [: - len (цифры)]', 'n = int (цифры)'. Я также собирался включить ''> = ': operator.ge' и '' <=': operator.le' в 'dict' для полноты неравенства. – ShadowRanger
@ShadowRanger Я думал использовать regex, потому что я считаю его более гибким в случае, когда строки OP становятся более сложными в будущем. Но использование 'lstrip()' является хорошим способом, который он должен учитывать. – Delgan
Да, регулярное выражение прекрасно в этом случае (оно находится на границе между «use simple string ops» и «use regex», и только мое философское возражение против чрезмерного использования регулярных выражений заставляет меня ошибаться на стороне «no regex»). Я просто комментировал альтернативы (я не хотел публиковать в основном избыточный ответ, когда у вас хорошо, только чтобы включить эту крошечную настройку). – ShadowRanger