Skip to content

PRO TIP Block youtube.com at the DNS level — Pi-hole, NextDNS or your hosts file — but allow youtube-nocookie.com and i.ytimg.com. These tutorials keep playing; the rabbit hole does not.

Learning without distractions

Learn Python AGGREGATION in 6 minutes! 📚

24.9K views on YouTube

# Aggregation = Represents a relationship where one object (the whole)
# contains references to one or more INDEPENDENT objects (the parts)

class Library:
def __init__(self, name):
self.name = name
self.books = []

def add_book(self, book):
self.books.append(book)

def list_books(self):
return [f”{book.title} by {book.author}” for book in self.books]

class Book:
def __init__(self, title, author):
self.title = title
self.author = author

library = Library(“New York Public Library”)

book1 = Book(“Harry Potter…”, “J.K. Rowling”)
book2 = Book(“The Hobbit”, “J. R. R. Tolkein”)
book3 = Book(“The Colour of Magic”, “Terry Pratchett”)

library.add_book(book1)
library.add_book(book2)
library.add_book(book3)

print(library.name)

for book in library.list_books():
print(book)