условные выражения, тестирование числа в диапазоне - PullRequest
1 голос
/ 05 декабря 2011

Я хочу проверить число, чтобы увидеть, если оно между одним и тремя, но я думаю, что мое решение уродливо и просто.

Может кто-нибудь предложить что-то лучше?

blah = ('woo','blah','foo','bah')
if int(tmpword[2]) >= 1 or int(tmpword[2]) >= len(blah):
        return False, bpoints[int(tmpword[2])-1]
else:
        return False, word

tmpword - это число, которое я вытаскиваю из строки.Я просто хочу проверить, находится ли это число от 1 до длины «бла»

Ответы [ 2 ]

2 голосов
/ 05 декабря 2011
if 1 <= int(tmpword[2]) <= len(blah):

и т.д.

Кстати, ваш существующий код тоже не делает то, что вы хотите. Вы, вероятно, имели в виду

if int(tmpword[2]) >= 1 and int(tmpword[2]) <= len(blah):

и т.д.

0 голосов
/ 05 декабря 2011
def test(tmpword):
  return 1 <= int(tmpword) <= len(blah)
...