Skip to content

Commit 57c651d

Browse files
committed
added signatures
1 parent 60c5259 commit 57c651d

File tree

2 files changed

+30
-13
lines changed

2 files changed

+30
-13
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ class Record
2424
r1 = Record(amount=122, comment='Хороший шопинг', date='09.04.2019')
2525
```
2626

27-
## Родительский класс калькулятора
27+
## Базовый класс калькулятора
2828

2929
```python
3030
class Calculator

homework.py

Lines changed: 29 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@
44

55

66
class Record:
7-
def __init__(self, amount, comment, date=None):
7+
'''Класс записей пользователя.'''
8+
def __init__(
9+
self,
10+
amount: float,
11+
comment: str,
12+
date: dt.date = None
13+
) -> None:
814
self.amount = amount
915
self.comment = comment
1016
if date is None:
@@ -14,45 +20,54 @@ def __init__(self, amount, comment, date=None):
1420

1521

1622
class Calculator:
17-
def __init__(self, limit):
23+
'''Базовый класс калькулятора.'''
24+
def __init__(self, limit) -> None:
1825
self.limit = limit
1926
self.records = []
2027

21-
def get_today_date(self):
28+
def get_today_date(self) -> dt.date:
29+
"""Получить текущую дату."""
2230
return dt.date.today()
2331

24-
def get_week_date(self):
32+
def get_week_date(self) -> dt.date:
33+
"""Получить дату неделю назад."""
2534
return self.get_today_date() - dt.timedelta(days=7)
2635

27-
def add_record(self, record):
36+
def add_record(self, record) -> None:
37+
"""Добавить новую запись."""
2838
return self.records.append(record)
2939

30-
def get_today_stats(self):
40+
def get_today_stats(self) -> float:
41+
"""Получить сумму расходов за сегодня."""
3142
today = self.get_today_date()
3243
t_amount = [record.amount for record in self.records
3344
if record.date == today]
3445
return sum(t_amount)
3546

36-
def get_week_stats(self):
47+
def get_week_stats(self) -> float:
48+
"""Получить сумму расходов за неделю."""
3749
today = self.get_today_date()
3850
week_ago = self.get_week_date()
3951
week_amount = [record.amount for record in self.records
4052
if today >= record.date > week_ago]
4153
return sum(week_amount)
4254

43-
def get_today_limit(self):
55+
def get_today_limit(self) -> float:
56+
"""Получить допустимую сумму расходов за сегодня."""
4457
return self.limit - self.get_today_stats()
4558

4659

4760
class CashCalculator(Calculator):
61+
'''Класс калькулятора денег.'''
4862
USD_RATE = 73.20
4963
EURO_RATE = 86.64
5064

51-
def __init__(self, limit):
65+
def __init__(self, limit: float) -> None:
5266
self.limit = limit
5367
self.records = []
5468

55-
def get_today_cash_remained(self, currency):
69+
def get_today_cash_remained(self, currency: str) -> str:
70+
"""Вернуть информационное сообщение о финансовых расходах."""
5671
self.currency = currency
5772
t_amount = self.get_today_limit()
5873
currencies = {'rub': ('руб', 1),
@@ -72,11 +87,13 @@ def get_today_cash_remained(self, currency):
7287

7388

7489
class CaloriesCalculator(Calculator):
75-
def __init__(self, limit):
90+
'''Класс калькулятора калорий.'''
91+
def __init__(self, limit: float) -> None:
7692
self.limit = limit
7793
self.records = []
7894

79-
def get_calories_remained(self):
95+
def get_calories_remained(self) -> str:
96+
"""Вернуть информационное сообщение о расходах калорий."""
8097
positive_message = ('Сегодня можно съесть что-нибудь ещё, '
8198
'но с общей калорийностью не более')
8299
t_amount = self.get_today_limit()

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy