#python #python-3.x
#python #python-3.x
Вопрос:
я пытаюсь выдавать разные выходные данные в зависимости от входных данных, но я получу один и тот же результат для всех входных данных.
я попытался удалить оператор «или», и код будет работать нормально! но при повторном использовании оператора «или» код не будет работать так, как должен
voroodi = input('Enter Something: ')
if voroodi == 'h' or 'H':
print('hello')
elif voroodi == 'g' or 'G':
print('Goodbye')
я ожидаю получить вывод «Hello», когда я ввожу «H» или «h» в качестве входных данных
и «Прощай» для «G» «g».
но я просто получаю привет для любого ввода, который я ввожу!
Комментарии:
1.
if voroodi.lower() == 'h':
2. или:
if voroodi in ('h', 'H'):
Ответ №1:
or
так не работает. Вы должны сказать;
if voroodi == 'h' or vortoodi == 'H':
’H’
рассматривается все само по себе True
. Любая непустая строка считается true, поэтому ваше исходное утверждение if voroodi == 'h' or True:
всегда верно.
Ответ №2:
Это должно быть
if voroodi == 'h' or voroodi == 'H':
print('hello')
elif voroodi == 'g' or voroodi == 'G':
print('Goodbye')
Решение Rakesh также будет worl k
Ответ №3:
Вы можете использовать оператор in
:
voroodi = input('Enter Something: ')
if voroodi in 'hH':
print('hello')
elif voroodi in 'gG':
print('Goodbye')