Skip to content

Homework lection2 serhii tatarnikov#20

Open
yakudza wants to merge 2 commits intorusalforever:masterfrom
yakudza:homework_lection2_serhii_tatarnikov
Open

Homework lection2 serhii tatarnikov#20
yakudza wants to merge 2 commits intorusalforever:masterfrom
yakudza:homework_lection2_serhii_tatarnikov

Conversation

@yakudza
Copy link
Copy Markdown

@yakudza yakudza commented Jun 5, 2025

No description provided.

yakudza added 2 commits June 3, 2025 23:57
створення інстансу книги та журналу
додавання їх у бібліотеку
виведення списку книг у бібліотеці
виведення списку книг бібліотеки по імені автора
збереження списку книг у файл
видалення книги з бібліотеки
виведення списку книг після видалення
додавання книг з файлу в бібліотеку
виведення списку книг бібліотеки після додавання
dependencies = [
"pydantic[email] (>=2.11.5,<3.0.0)"
"pydantic[email] (>=2.11.5,<3.0.0)",
"solution (>=5.4.0,<6.0.0)"
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Це точно потрібне?

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

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

ну pydantic впевнений на 95 відсотків, а solution навіть не поняв шо це і звідко взялося

def check_book_exists(func):
@wraps(func)
def wrapper(self, book: Book):
if book in self.books:
Copy link
Copy Markdown
Owner

Choose a reason for hiding this comment

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

Це не працює як очікується без перевизначення eq та hash в класі Book. Інакше Python порівнює за обʼєктною адресою, а не за вмістом.
def eq(self, other):
if not isinstance(other, Book):
return False
return self._book_model == other._book_model

def hash(self):
return hash((self._book_model.title, self._book_model.author, self._book_model.year))

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.

2 participants