Как приравнивать значение переменной к одному из элементов списка?
Вопрос заключается в следующем: Как приравнивать текстовую переменную к одному из элементов списка? Код:
denb = ['понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота', 'воскресенье']
n = input('Введите день недели: ')
for i in denb:
if n == denb:
print(i)
P.S. Задание: Напишите программу, которая принимает от пользователя день недели в виде строки и выводит его номер на экран.
Ответы (3 шт):
Автор решения: Dmitry
→ Ссылка
Можете воспользоваться методом index. Необходимо учесть что счет начинается с нуля.
denb = ['понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота', 'воскресенье']
n = input('Введите день недели: ')
if n in denb:
print(denb.index(n)) # с нуля
print(denb.index(n) + 1) # с еденицы
else:
print(f"Дня недели с именем {n} нет")
Автор решения: Andy Pavlov
→ Ссылка
Проверить вхождение можно двумя вариантами через метод списка index() или через прямой поиск номера дня через нумерацию списка с помощью enumerate() и дальнейшего сравнения строки
denb = ['понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота', 'воскресенье']
n = input('Введите день недели: ').lower()
Через index()
print(denb.index(n) + 1 if n in denb else 'Не тот день')
Через enumerate()
print(next((idn + 1 for idn, d in enumerate(denb) if d == n), 'Не тот день'))
Автор решения: Игорь Поздняков
→ Ссылка
С помощью enumerate:
dayofWeek = input("Введите день недели: ")
week = ["понедельник", "вторник", "среда", "четверг", "пятница", "суббота", "воскресенье"]
print('Номер дня недели:', end =' ')
for number, day in enumerate (week):
if dayofWeek == day:
print(number + 1)