Skip to content

HW_Kokinos#10

Open
Kokinos0209 wants to merge 16 commits intoPython-BI-2025-26:mainfrom
Kokinos0209:HW_Kokinos
Open

HW_Kokinos#10
Kokinos0209 wants to merge 16 commits intoPython-BI-2025-26:mainfrom
Kokinos0209:HW_Kokinos

Conversation

@Kokinos0209
Copy link

Programme calculator.py was created

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Привет! (´• ω •`)ノ
Отличная работа, молодцы! Комментарии к коду вы найдете ниже.

  • О 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 'На ноль делить нельзя!'
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Молодцы, что подумали о случае деления на ноль, но в питоне итак есть свой особый тип ошибок ZeroDivisionError, программа будет кидать её даже, если вы не поставите условие, поэтому можно не писать дополнительных проверок. Также в данном случае функция обычно возвращает числа, а здесь в качестве результата - строка.

result = deviation(num1, num2)
return result

def difference(a, b):
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Стоит избегать однобуквенных названий переменных, как a/b и x/y. У вас отлично написано в главной функции num1 и num2. Стоит делать код с названиями переменных в одном стиле (-1 балл).

return result

def difference(a, b):
return (a - b)
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Можно убрать скобки из всех return, они не повлияют на правильность исполнения кода.

def multiple(a, b):
return (a * b)

def deviation (x, y):
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

По документации PEP8 тут не нужен пробел между названием функции и аргументами. Наверняка вы уже познакомились с классными ребятами black и flake8 (¬‿¬).

def addition(a, b):
return (a + b)

print(main(input("Введите выражение: ")))
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ридми написан на английском языке, поэтому лучше придерживаться английского языка при написании предупреждений и взаимодействии с пользователем.

parts = expression.split()
operator = parts[1]
num1, num2 = float(parts[0]), float(parts[2])
result = 0
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Можно не задавать переменную result по дефолту 0. В любом случае вы её всегда создаете при вызове функций заново. Это опасно ещё и тем, что при введении такого выражения 7 & 9, которое не заложено программой, она выдаст 0 как правильный ответ.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants