Попытка построить калькулятор калорий ie и ошибка «неверный синтаксис» - PullRequest
0 голосов
/ 29 апреля 2020

Я пытаюсь создать калькулятор, который спрашивает, сколько калорий съело за день, затем добавляет сумму за каждый день и печатает общее потребление за неделю, но я получаю неверную синтаксическую ошибку. Вот код, который я написал до сих пор. Любая помощь будет оценена.

print("Monday")

m = input('How many calories did you consume today?')

print("Tuesday")

tues = input('How many calories did you consume today?')

print("Wednesday")

w = input('How many calories did you consume today?')

print("Thursday")

thurs = input('How many calories did you consume today?')

print("Friday")

f = (input('How many calories did you consume today?')

print("Saturday")

s = input('How many calories did you consume today?')

print("Sunday")

sun = input('How many calories did you consume today?')

sum = m + tues + w + thurs + f + s + sun

print("Amount of calories this week!", sum)

Ответы [ 2 ]

2 голосов
/ 29 апреля 2020

Пара проблем Во-первых, здесь есть дополнительная скобка

f = (input('How many calories did you consume today?')

Избавьтесь от нее, это, вероятно, вызывает вашу ошибку. Это должно выглядеть как

f = input('How many calories did you consume today?')

Другая проблема заключается в том, что вы не получите числовое прибавление. Вы получите конкатенацию строк. Чтобы это исправить, вам нужно использовать класс int или float. Ваш код должен выглядеть следующим образом

print("Monday")

m = int(input('How many calories did you consume today?'))

print("Tuesday")

tues = int(input('How many calories did you consume today?'))

print("Wednesday")

w = int(input('How many calories did you consume today?'))

print("Thursday")

thurs = int(input('How many calories did you consume today?'))

print("Friday")

f = int(input('How many calories did you consume today?'))

print("Saturday")

s = int(input('How many calories did you consume today?'))

print("Sunday")

sun = int(input('How many calories did you consume today?'))

sum = m + tues + w + thurs + f + s + sun

print("Amount of calories this week!", sum)

или

print("Monday")

m = input('How many calories did you consume today?')

print("Tuesday")

tues = input('How many calories did you consume today?')

print("Wednesday")

w = input('How many calories did you consume today?')

print("Thursday")

thurs = input('How many calories did you consume today?')

print("Friday")

f = input('How many calories did you consume today?')

print("Saturday")

s = input('How many calories did you consume today?')

print("Sunday")

sun = input('How many calories did you consume today?')

sum = int(m) + int(tues) + int(w) + int(thurs) + int(f) + int(s) + int(sun)

print("Amount of calories this week!", sum)

Почему это так? Если входные данные не преобразованы, они и пользователь вводят, например, 1, 4, 2 и 5. Без преобразования ваша сумма будет выглядеть как 1425, так как она объединяет две строки вместе. При преобразовании в int вы получите 12 в качестве вывода.

1 голос
/ 29 апреля 2020

Вы пропустили ) до синтаксиса print("Saturday")

Во-вторых, если вы хотите добавить числа, вы должны преобразовать их в int или float

print("Monday")

m = int(input('How many calories did you consume today?'))

print("Tuesday")

tues = int(input('How many calories did you consume today?'))

print("Wednesday")

w = int(input('How many calories did you consume today?'))

print("Thursday")

thurs = int(input('How many calories did you consume today?'))

print("Friday")

f = int(input('How many calories did you consume today?'))

print("Saturday")

s = int(input('How many calories did you consume today?'))

print("Sunday")

sun = int(input('How many calories did you consume today?'))

sum = m + tues + w + thurs + f + s + sun

print("Amount of calories this week!", sum)
...