输入可选空集和字典的提示

问题描述 投票:0回答:1

我有一个可以返回空集或字符串集的函数:

{'string1', 'string2'}
。我该如何输入提示呢?
set[str]
允许空集吗?

同样,对于可以返回空字典或以字符串作为键、以 bool 或字符串或字符串列表作为值的字典的函数,其类型提示是什么?

dict[str, str|bool|List[str]]
是否允许空字典?

python python-typing mypy
1个回答
0
投票

set[str]
就完美了!您可以使用如下代码示例自行测试:

x: set[str]
x = set()
x = {"fizz"}
x = {0}

mypy 会因为你传入

set[int]
而不是
set[str]
后的最后一个作业对你大喊大叫,但第一个作业完全没问题。

字典也是如此。以下代码片段将通过静态类型检查:

from typing import List

x: dict[str, str|bool|List[str]] = {}
© www.soinside.com 2019 - 2024. All rights reserved.