Ввод Python не работает должным образом при использовании внутри оператора if

1

Я быстро разработал программу бюджетирования, чтобы определить, сколько времени потребуется, чтобы купить что-то, и у меня возникла проблема. Всякий раз, когда я пытаюсь запустить его, единовременные элементы продаж не добавляются к балансу. Мой код выглядит следующим образом:

graphicsCard = 50
amdCpu = 80
itelCpu = 99
ram = 140
guitar = 199
case = 99
balance = 21
if (input('Has the graphics card been sold yet?').lower == "yes"):
    balance += graphicsCard
if (input('Has the AMD cpu been sold yet?').lower == "yes"):
    balance += amdCpu
if (input('Has the intel CPU been sold yet?').lower == "yes"):
    balance += intelCpu
if (input('Has the RAM been sold yet?').lower == "yes"):
    balance += ram
if (input('Has the Guitar been sold yet?').lower == "yes"):
    balance += guitar
if (input('Has the Case been sold yet?').lower == "yes"):
    balance += case

Я добавил выражение else после первого, если, чтобы определить, правильно ли он читал мой ответ "да", и это не так.

Теги:
python-3.x
if-statement

2 ответа

2

lower - это метод, вам нужно называть его:

if input('Has the graphics card been sold yet?').lower() == "yes":

Обратите внимание, как я покажу, вам не нужны скобки вокруг самого условия.

1

Вы должны попробовать.lower()

>>> myinput = input('Enter something: ')
Enter something: yes
>>> myinput.lower
<built-in method lower of str object at 0x7f79b2391068>
>>> myinput.lower()
'yes'

Ещё вопросы

Сообщество Overcoder
Наверх
Меню