Skip to content

HW2_Senkovenko#17

Open
a-senkovenko wants to merge 16 commits intoPython-BI-2025-26:mainfrom
a-senkovenko:HW2_Senkovenko
Open

HW2_Senkovenko#17
a-senkovenko wants to merge 16 commits intoPython-BI-2025-26:mainfrom
a-senkovenko:HW2_Senkovenko

Conversation

@a-senkovenko
Copy link

Calculator for Python-BI course. ٩(◕‿◕。)۶

Comment on lines +16 to +21
operators = {
'+': addition,
'-': subtraction,
'*': multiplication,
'/': division
}
Copy link

Choose a reason for hiding this comment

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

Очень крутое решение сделать вызов функций из словаря! (+1 доп балл)

line = check.split()

if len(line) != 3:
raise ValueError("Incorrect number of values, check your input: value1 operator value2")
Copy link

Choose a reason for hiding this comment

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

Здорово, что написали вызов ошибки, очень продвинутое решение)

Comment on lines +50 to +57
except ValueError as valerr:
print(f"Value Error: {valerr}")
except KeyError as keyerr:
print(f"Key Error: {keyerr}")
except ZeroDivisionError as zeroerr:
print(f"Math Error: {zeroerr}")
except Exception as exc:
print(f"Unexpected Error: {exc}")
Copy link

Choose a reason for hiding this comment

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

Отличное решение по try-execpt блоку!


def division(val1, val2):
if val2 == 0:
raise ZeroDivisionError("Cannot divide by zero")
Copy link

Choose a reason for hiding this comment

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

Здесь нет необходимости в вызове ошибки ZeroDivision, поскольку питон сам её поднимает. Также это дублирует функционал из except блока функции main, что немного избыточно.

'/': division
}

def main():
Copy link

Choose a reason for hiding this comment

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

У вас итак замечательная работа, но ещё круче её может сделать дополнение в виде docstrings и аннотаций функций)

Copy link

Choose a reason for hiding this comment

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

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

  • О README.md: Очень подробное и понятное ридми! Отличным решением было добавить примеры, пояснения к ошибкам и интерактивный выход из программы. (+1 доп. балл)
  • О коммитах и структуре репозитория: Очень здорово, что и коммиты, и PR имеют осмысленные названия. Очень большая и красивая работа!

О коде будет комментарий чуть ниже в виде построчного ревью.
Баллы: 10/10 (README) + 10/10 (Forks) + 80/80 (код и коммиты) + 12 доп. =
= 100/100 + 12 доп. = 112 баллов

Вы проделали большую работу. Молодцы! (´。• ω •。`)
(тимлид, не забудь показать ревью всей команде)

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