ch01-12: clean up by @eumiro
This commit is contained in:
@@ -1,8 +1,6 @@
|
||||
from dataclasses import dataclass, field
|
||||
from typing import List # <1>
|
||||
|
||||
@dataclass
|
||||
class ClubMember:
|
||||
|
||||
name: str
|
||||
guests: List[str] = field(default_factory=list) # <2>
|
||||
guests: list[str] = field(default_factory=list) # <1>
|
||||
|
||||
@@ -30,13 +30,13 @@ To fix, ``leo2`` must be created with an explicit ``handle``::
|
||||
|
||||
# tag::HACKERCLUB[]
|
||||
from dataclasses import dataclass
|
||||
from typing import ClassVar, Set
|
||||
from typing import ClassVar
|
||||
from club import ClubMember
|
||||
|
||||
@dataclass
|
||||
class HackerClubMember(ClubMember):
|
||||
|
||||
all_handles: ClassVar[Set[str]] = set()
|
||||
all_handles: ClassVar[set[str]] = set()
|
||||
|
||||
handle: str = ''
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ A complete resource record:
|
||||
|
||||
# tag::DATACLASS[]
|
||||
from dataclasses import dataclass, field
|
||||
from typing import List, Optional
|
||||
from typing import Optional
|
||||
from enum import Enum, auto
|
||||
from datetime import date
|
||||
|
||||
@@ -43,12 +43,12 @@ class Resource:
|
||||
"""Media resource description."""
|
||||
identifier: str # <2>
|
||||
title: str = '<untitled>' # <3>
|
||||
creators: List[str] = field(default_factory=list)
|
||||
creators: list[str] = field(default_factory=list)
|
||||
date: Optional[date] = None # <4>
|
||||
type: ResourceType = ResourceType.BOOK # <5>
|
||||
description: str = ''
|
||||
language: str = ''
|
||||
subjects: List[str] = field(default_factory=list)
|
||||
subjects: list[str] = field(default_factory=list)
|
||||
# end::DATACLASS[]
|
||||
|
||||
|
||||
@@ -58,12 +58,12 @@ from typing import TypedDict
|
||||
class ResourceDict(TypedDict):
|
||||
identifier: str
|
||||
title: str
|
||||
creators: List[str]
|
||||
creators: list[str]
|
||||
date: Optional[date]
|
||||
type: ResourceType
|
||||
description: str
|
||||
language: str
|
||||
subjects: List[str]
|
||||
subjects: list[str]
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
@@ -41,7 +41,7 @@ A complete resource record:
|
||||
"""
|
||||
|
||||
from dataclasses import dataclass, field, fields
|
||||
from typing import List, Optional, TypedDict
|
||||
from typing import Optional, TypedDict
|
||||
from enum import Enum, auto
|
||||
from datetime import date
|
||||
|
||||
@@ -57,12 +57,12 @@ class Resource:
|
||||
"""Media resource description."""
|
||||
identifier: str
|
||||
title: str = '<untitled>'
|
||||
creators: List[str] = field(default_factory=list)
|
||||
creators: list[str] = field(default_factory=list)
|
||||
date: Optional[date] = None
|
||||
type: ResourceType = ResourceType.BOOK
|
||||
description: str = ''
|
||||
language: str = ''
|
||||
subjects: List[str] = field(default_factory=list)
|
||||
subjects: list[str] = field(default_factory=list)
|
||||
|
||||
# tag::REPR[]
|
||||
def __repr__(self):
|
||||
@@ -82,12 +82,12 @@ class Resource:
|
||||
class ResourceDict(TypedDict):
|
||||
identifier: str
|
||||
title: str
|
||||
creators: List[str]
|
||||
creators: list[str]
|
||||
date: Optional[date]
|
||||
type: ResourceType
|
||||
description: str
|
||||
language: str
|
||||
subjects: List[str]
|
||||
subjects: list[str]
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
Reference in New Issue
Block a user