使用 namedtuple 而不是带有 typing.optional 的元组

Use namedtuple instead of tuple with typing.optional

如何使用 namedtuple 和 typing.optional 而不是这个元组? 我想以 result_final(power=Stats(min=12, max=None)) 的格式调用函数 谢谢你。 我试过 Stats = namedtuple('Stats', [Optional[int], Optional[int]])

from typing import Optional, Tuple
Stats = Tuple[Optional[int], Optional[int]]  # min, max

def result_final(power: Stats):
    min, max = power
    print("min:", min, "max: ", max)
print(result_final(power=(12, None)))

# namedTuple to have result_final(power=Stats(min=12, max=None))

如果是 Python 3 你可以执行以下操作。

from typing import NamedTuple

class Stats(NamedTuple):
    min: Optional[int]
    max: Optional[int]

有关详细信息,请参阅文档:https://docs.python.org/3.7/library/typing.html#typing.NamedTuple