Challenge 1
Implement class subscription so Box[int] returns a tuple containing the class name and the supplied item.
class Box:
def __class_getitem__(cls, item):
print(Box[int])
Press Ctrl⌘Enter to check your answer
Practice implementing __class_getitem__ for class subscription and generic-style parameterization.
Challenge 1
class Box:
def __class_getitem__(cls, item):
print(Box[int])
Press Ctrl⌘Enter to check your answer
Challenge 2
class Pair:
def __class_getitem__(cls, key):
if not isinstance(key, tuple):
key = (key,)
return tuple(item.__name__ for item in key)
print(Pair[int, str])
Press Ctrl⌘Enter to check your answer
Challenge 3
from types import GenericAlias
class Box:
def __class_getitem__(cls, item):
print(Box[int])
print(Box[int].__args__)
Press Ctrl⌘Enter to check your answer
Challenge 4
class Catalog:
def __class_getitem__(cls, key):
def __getitem__(self, key):
return key * 10
print(Catalog[int])
print(Catalog()[2])
Press Ctrl⌘Enter to check your answer