Python простое или логическое выражение
Как бы вы пишете в python:
if key < 1 or key > 34:
Я пробовал все, что мог, и нахожу это очень неприятным.
Ответы
Ответ 1
Если key
не является int
или float
, но a str
ing, вам нужно сначала преобразовать его в int
, выполнив
key = int(key)
или a float
, выполнив
key = float(key)
В противном случае то, что у вас есть в вашем вопросе, должно работать, но
if (key < 1) or (key > 34):
или
if not (1 <= key <= 34):
будет немного понятнее.
Ответ 2
Вот логическая вещь:
if (not suffix == "flac" ) or (not suffix == "cue" ): # WRONG! FAILS
print filename + ' is not a flac or cue file'
но
if not (suffix == "flac" or suffix == "cue" ): # CORRECT!
print filename + ' is not a flac or cue file'
(not a) or (not b) == not ( a and b )
, ложно, только если a и b оба истинны
not (a or b)
имеет значение true, только если a и be оба являются ложными.
Ответ 3
Вы можете просто использовать
if (клавиша <1) или (клавиша> 34):
ваша проблема будет решена
Ответ 4
@deex проверить Закон де Моргана