Conversation
add function for multiplying a*b
Add division function
add difference function
add main function
There was a problem hiding this comment.
Привет! (´• ω •`)ノ
Отличная работа, молодцы! Комментарии к коду вы найдете ниже.
-
О README.md: было бы здорово добавить в ридми примеры того, как использовать ваш тул (например, что нужно вводить 3 + 5 через пробел, так как без него падает ошибка) и написать конкретные команды по скачиванию. Это займет немного места, а человеку, который хочет использовать ваш тул, будет приятно)
-
О коммитах и структуре репозитория: Стоит похвалить команду за осмысленные названия коммитов! Так держать! Однако названия коммитов лучше писать с заглавной буквы + стоит избегать давать коммитам длинные названия как здесь 'create file calculator.py \n\n add additional function'
О коде будет комментарий чуть ниже в виде построчного ревью.
Баллы: 10/10 (README) + 10/10 (Forks) + 79/80 (код и коммиты) + 10 доп. =
= 99/100 + 10 доп. = 109 баллов
Будьте внимательнее, ветка, PR и папка должны называться HW2_Kokinos.
Вы проделали большую работу. Молодцы! (´。• ω •。`)
(тимлид, не забудь показать ревью всей команде)
| result = multiple(num1, num2) | ||
| elif operator == '/': | ||
| if num2==0: | ||
| return 'На ноль делить нельзя!' |
There was a problem hiding this comment.
Молодцы, что подумали о случае деления на ноль, но в питоне итак есть свой особый тип ошибок ZeroDivisionError, программа будет кидать её даже, если вы не поставите условие, поэтому можно не писать дополнительных проверок. Также в данном случае функция обычно возвращает числа, а здесь в качестве результата - строка.
| result = deviation(num1, num2) | ||
| return result | ||
|
|
||
| def difference(a, b): |
There was a problem hiding this comment.
Стоит избегать однобуквенных названий переменных, как a/b и x/y. У вас отлично написано в главной функции num1 и num2. Стоит делать код с названиями переменных в одном стиле (-1 балл).
| return result | ||
|
|
||
| def difference(a, b): | ||
| return (a - b) |
There was a problem hiding this comment.
Можно убрать скобки из всех return, они не повлияют на правильность исполнения кода.
| def multiple(a, b): | ||
| return (a * b) | ||
|
|
||
| def deviation (x, y): |
There was a problem hiding this comment.
По документации PEP8 тут не нужен пробел между названием функции и аргументами. Наверняка вы уже познакомились с классными ребятами black и flake8 (¬‿¬).
| def addition(a, b): | ||
| return (a + b) | ||
|
|
||
| print(main(input("Введите выражение: "))) |
There was a problem hiding this comment.
Ридми написан на английском языке, поэтому лучше придерживаться английского языка при написании предупреждений и взаимодействии с пользователем.
| parts = expression.split() | ||
| operator = parts[1] | ||
| num1, num2 = float(parts[0]), float(parts[2]) | ||
| result = 0 |
There was a problem hiding this comment.
Можно не задавать переменную result по дефолту 0. В любом случае вы её всегда создаете при вызове функций заново. Это опасно ещё и тем, что при введении такого выражения 7 & 9, которое не заложено программой, она выдаст 0 как правильный ответ.
Programme calculator.py was created