файл baseclasses.py
Код: Выделить всё
class Item:
# Item stuff
class Book(Item):
# Book stuff
class Drawing(Item):
# Drawing stuff
Код: Выделить всё
from baseclasses import Book, Drawing
class MedievalBook(Book):
# Extends Book class and contains stuff specific to Medieval books
class MedievalDrawing(Drawing):
# Extends Drawing class and contains stuff specific to Medieval drawings
Код: Выделить всё
from baseclasses import Book, Drawing
class RenaissanceBook(Book):
# Extends Book class and contains stuff specific to Renaissance books
class RenaissanceDrawing(Drawing):
# Extends Drawing class and contains stuff specific to Renaissance drawings
файлвыставочный.py
Код: Выделить всё
from age_medieval import MedievalBook, MedievalDrawing
from age_renaissance import RenaissanceBook, RenaissanceDrawing
def items_exhibited(param1: int, param2: int, param3: int) -> list[MedievalBook | MedievalDrawing | RenaissanceBook | RenaissanceDrawing]:
items = []
if param1 == EXHIBITION_MEDIEVAL:
items = filter_medieval_items(param2)
elif param1 == EXHIBITION_RENAISSANCE:
items = filter_renaissance_items(param3)
return items
Есть ли лучший способ (мы можем предположить, что это Python 3.12+, если это поможет)? Или мне просто оставить это как -> list[]:?
Подробнее здесь: https://stackoverflow.com/questions/798 ... -of-unknow
Мобильная версия