Сокращение кода путем удаления дублирования в кодах с функцией? - PullRequest
0 голосов
/ 21 января 2020

Я попросил уменьшить код для удаления дублирования:

june_hours = 243
june_cost = june_hours * 0.65
print("In June we spent: " + str(june_cost))

july_hours = 325
july_cost = july_hours * 0.65
print("In July we spent: " + str(july_cost))

august_hours = 298
august_cost = august_hours * 0.65
print("In August we spent: " + str(august_cost))

Я попытался:

def print_monthly_expense(month, hours):
    time = hours * 0.65
    print("In " + month + " We spent : " + str(time))

print_monthly_expense("June",243)
print_monthly_expense("July",325)
print_monthly_expense("August",298)

И результат:

В июне мы потратили: 157,95000000000002
В июле мы потратили: 211,25
В августе мы потратили: 193,70000000000002

И система ответила:

Не совсем. Пусть ваша функция выполнит большую часть работы и просто передаст название месяца и связанные часы в качестве параметров.

Помните, что для июня, июля и августа часы равны 243, 325 и 298 соответственно.

Пожалуйста, помогите мне, что не так с кодом?

заранее спасибо

1 Ответ

0 голосов
/ 23 января 2020

Монирул, похоже, мы оба работаем над одним и тем же. У меня была та же ошибка, что и у вас, когда я впервые запускал свой код.

Сначала у меня был этот код:

def print_monthly_expense(month, hours):
    cost = (hours) * 0.67
    print("In "  + month + " we spent: " + str(cost))

print_monthly_expense("June",243)
print_monthly_expense("July",325)
print_monthly_expense("August",298)

Первые несколько раз, когда я запускал его, я получал ту же ошибку у вас было, и я не мог понять это. Тогда я понял, что 0,67 было неправильно, я должен был использовать 0,65. Когда я исправил ошибку, код работал правильно, и я получил это сообщение.

Here is your output:
In June we spent: 157.95000000000002
In July we spent: 211.25
In August we spent: 193.70000000000002

Nice work! You're getting acquainted with some interesting
coding practices to reduce code duplication.

Вы выяснили, что случилось? Может быть, это форматирование текста? У вас есть заглавные буквы "Мы" и пробел перед двоеточием в конце "потрачено:"? Просто угадаю, больше ничего не вижу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...