我有一些Python代码(可在Python 3.5、3.6和3.7上运行),并添加了一些使用mypy进行静态类型检查的类型提示。
请查看以下代码段:
class MyParams(Singleton, metaclass=MyParamsMeta):
@classmethod
def keys(cls): # TODO -> type?
return cls._params.keys()
@classmethod
def items(cls): # TODO -> type?
return cls._params.items()
_params = _load_from_csv() # returns Dict[str, MyParam]
def keys(cls)
和def items(cls)
的正确类型提示语句是什么?
答案 0 :(得分:0)
您可以使用typing
模块
import typing
class MyParams(Singleton, metaclass=MyParamsMeta):
@classmethod
def keys(cls) -> typing.collections.KeysView:
return cls._params.keys()
@classmethod
def items(cls) -> typing.collections.ItemsView:
return cls._params.items()
_params = _load_from_csv() # returns Dict[str, MyParam]