Я делаю проект колледжа и не могу заставить этот код работать. Он работает нормально до конца, когда я получаю код ошибки.
File "c:\users\___\waterconsumptiontracker.py", line 28, in <module>
DWC = (a + b + c + d + e)
TypeError: must be str, not int
Кто-нибудь может помочь? Я очень новичок в кодировании!
ShowerInput = input("Did you take a shower today? Y/N")
if (ShowerInput == ("Y") or ("y") or ("Yes") or ("yes")):
ShowerTime = input("How long was your shower in minutes?")
a = ShowerTime * 15
Handwash = int(input("How many times did you wash you hands today?"))
b = Handwash * 3
BrushTeeth = int(input("How many times did you brush your teeth today?"))
if (BrushTeeth > 0):
Tap = input("Do you turn off the tap while brushing? Y/N")
if Tap == ("Y"):
Brushing = (2)
else:
Brushing = (8)
c = BrushTeeth * Brushing
DrinkingWater = int(input("How many litres of water did you drink today?"))
d = DrinkingWater
Toilet = int(input("How many times did you flush the toilet today?"))
e = Toilet * 15
DWC = (a + b + c + d + e)
print("Your Daily Water Consumption today was:")
print(DWC)
Спасибо! Действительно полезный материал! Определенно ошибка, которую я не совершу в будущем!
Вы забыли превратить ShowerTime в int. Таким образом, вы умножаете строку на 15, получая 15 конкатенированных копий.
Вы можете поставить int(input())
, когда попросите душ.
ShowerInput = input("Did you take a shower today? Y/N")
if (ShowerInput == ("Y") or ("y") or ("Yes") or ("yes")):
ShowerTime = int(input("How long was your shower in minutes?")) # int(input here
a = ShowerTime * 15
Handwash = int(input("How many times did you wash you hands today?"))
b = Handwash * 3
BrushTeeth = int(input("How many times did you brush your teeth today?"))
if (BrushTeeth > 0):
Tap = input("Do you turn off the tap while brushing? Y/N")
if Tap == ("Y"):
Brushing = (2)
else:
Brushing = (8)
c = BrushTeeth * Brushing
DrinkingWater = int(input("How many litres of water did you drink today?"))
d = DrinkingWater
Toilet = int(input("How many times did you flush the toilet today?"))
e = Toilet * 15
DWC = (a + b + c + d + e)
print("Your Daily Water Consumption today was:")
print(a + b + c + d + e)
Вы только что скопировали мой комментарий и воспользовались моим предложением, чтобы создать ответ?
@RufusVS Извините, я забыл сделать черную кавычку и уже печатал ответ на вопрос, но вы прокомментировали. Итак, я подумал, что это хороший комментарий, поэтому решил поместить ваш комментарий в ответ.
Спасибо за помощь! Я определенно смотрел на это слишком долго и не мог понять, что это было так просто!
@RossO'Brien Рад помочь! Пожалуйста, примите его, нажав на галочку.
Вы забыли превратить ShowerTime в int. Таким образом, вы умножаете строку на 15, получая 15 конкатенированных копий.