Найти - Пользователи
Полная версия: Оператор ветвления if
Начало » Python для новичков » Оператор ветвления if
1
nGreg
Подскажите, что я делаю не так. Сам я только перехожу на python из php.

pos = int(template)
if pos == 1:
template = re.sub(r“\bmonth\b”, “месяц”, template)
elif (pos >= 2 and pos <= 4) :
template = re.sub(r“\bmonth\b”, “месяца”, template)
elif (pos >= 5 and pos <= 12):
template = re.sub(r“\bmonth\b”, “месяцев”, template)
print(“<b>test here</b>”)

Если переменная pos в диапазоне от 1 до 9, что работает нормально. Как только подставляю 10, 11, 12, срабатывает 1-й блок. Как я понимаю, увидел в десятке первую цифру и сразу считает, что pos == 1.
Striver
Если переменная pos в диапазоне от 1 до 9, что работает нормально. Как только подставляю 10, 11, 12, срабатывает 1-й блок. Как я понимаю, увидел в десятке первую цифру и сразу считает, что pos == 1.
Если всё на самом дела так, то нужно бы выяснить, а откуда строка в этом самом template появляется (в твоём коде этого не видно). Скорее всего, проблема ещё там появляется.
nGreg
Striver
Двумя строкамы выше. Эта переменная просто ссылается на текст, введённый тут же. Я отслеживал и её, и pos. Всё в полном порядке. Тип - str.
Striver
Я отслеживал и её, и pos. Всё в полном порядке. Тип - str.
Что значит “отслеживал”?
Приведи полный код, желательно в питон-блоке, так, чтобы отступы было видно.
nGreg
Точно. Ты был прав. Вот тут я накосорезил.
template = template.format(“Вася”, “Пупкин”, “10”, “золоте”)
Отсюда она и берётся… Уже не 10, а 1…
PEHDOM
nGreg
Как только подставляю 10, 11, 12, срабатывает 1-й блок. Как я понимаю, увидел в десятке первую цифру и сразу считает, что pos == 1.
давайте ка полный код, потому как есть подозрение что в template у вас падают данные толи посимвольно, толи оно просто берет первый символ из всей строки.
nGreg
Всё уже, разобрался Со срезом индексов списка накосячил. Взял индекс только один, вместо двух. Вот он только первый элемент и отфильтровывал. Уже заработало. Пока к синтаксису питона привыкаю. После php различия нехилые. “.format” вообще для меня новинка. Третий день только осваиваю. Спасибо за подсказку!!!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB