Пара вопросов, на которые следует указать здесь, и большинство из них уже отмечены в других ответах, но пропущены важные, поэтому я все оберну в один ответ. Во-первых, функция ...
def calculateFathersDayPrice(price, isMember):
if isMember:
print price * 0.85/100
else:
print price * 0.95/100
- Как отметил Ааюш, вам не следует делить на 100. Возможно, вы думали
price * 85/100
? Несмотря на это, самый простой подход - просто умножить на 0,85 и 0,95.
- Вместо того, чтобы печатать значение в функции, вас попросили вернуть значение. Это хороший дизайн, чтобы отделить логику представления от бизнес-логики, и в этом случае бизнес-логика - это расчет. Ваша функция выполняет вычисления и передает результаты обратно в основную часть вашей программы, которая обрабатывает фактическое отображение. Чтобы вернуть значение, это просто
return some_value
.
Вот измененная версия вашей функции с этими двумя изменениями.
def calculateFathersDayPrice(price, isMember):
if isMember:
return price * 0.85
else:
return price * 0.95
Наконец, как отметил Андрей, вам нужно обработать пользовательский ввод и сделать с ним что-то полезное. Вам нужно решить, какие значения принимать от пользователя и что вы собираетесь делать, если они вводят что-то фальшивое. После вашей строки isMember = raw_input ("Are you a member?: ")
вам необходимо добавить небольшой код, чтобы превратить ввод пользователя в значение True / False в Python. Кроме того, что вы будете делать, если они ответят: "Сыр фета - это мерзко!" как ответ на ваш вопрос? Это правда или ложь, или вы спрашиваете их снова для более разумного ввода?