声明变量时Python类型不起作用

声明变量时Python类型不起作用,python,python-3.x,typing,Python,Python 3.x,Typing,我使用的是Python3.6,我想使用类型,因为它很好,你可以得到更好的linting,你可以在运行前捕获错误,也可以使用autocomplete 我有这个方法: def add_to_dynamic_dict(filenames_by_satustag: Dict[str, List[str]], status_tag: str, filename: str) -> Dict[str, List[str]]: 因此,在调用它之前,我创建了一个字典,如下所示: filenames_by_

我使用的是Python3.6,我想使用类型,因为它很好,你可以得到更好的linting,你可以在运行前捕获错误,也可以使用autocomplete

我有这个方法:

def add_to_dynamic_dict(filenames_by_satustag: Dict[str, List[str]], status_tag: str, filename: str) -> Dict[str, List[str]]:
因此,在调用它之前,我创建了一个字典,如下所示:

filenames_by_satustag = Dict[str, List[str]]
但是当运行脚本时,我得到

TypeError:typing.Dict[str,typing.List[str]]不是泛型类

在那条线上

但根据文件,这是正确的:

(26.1.1类型别名,第二组)

我做错了什么


谢谢。

我想你被类型别名弄糊涂了。您声明的方法需要一个第一个参数,您使用类型
Dict[str,List[str]]
调用它。但是,如果我没有弄错的话,您可以使用变量
filenames\u by_satustag
调用您的方法,该变量具有
Dict[str,List[str]]
。因此,它的类型是
Dict[str,List[str]]
,即
类型。如果要创建一个名为
filenames\u by_satustag
的新类型,应执行以下操作:


filenames\u by\u satustag=Dict[str,List[str]]
#函数return也可以用filenames_bu_satustag替换
def add_to_dynamic_dict(一些变量:filenames_by_satustag,status_tag:str,filename:str)->dict[str,List[str]:
但是,如果您想要的不是创建类型别名,而是通过_satustag
创建变量
filenames\u,则可以这样做:

filenames\u by_satustag:Dict[str,List[str]]={}

我想你被类型别名弄糊涂了。您声明的方法需要一个第一个参数,您使用类型
Dict[str,List[str]]
调用它。但是,如果我没有弄错的话,您可以使用变量
filenames\u by_satustag
调用您的方法,该变量具有
Dict[str,List[str]]
。因此,它的类型是
Dict[str,List[str]]
,即
类型。如果要创建一个名为
filenames\u by_satustag
的新类型,应执行以下操作:


filenames\u by\u satustag=Dict[str,List[str]]
#函数return也可以用filenames_bu_satustag替换
def add_to_dynamic_dict(一些变量:filenames_by_satustag,status_tag:str,filename:str)->dict[str,List[str]:
但是,如果您想要的不是创建类型别名,而是通过_satustag
创建变量
filenames\u,则可以这样做:

filenames\u by_satustag:Dict[str,List[str]]={}

您能发布完整的错误以及引发错误的代码的详细信息吗?我没有从那一行中得到任何错误…
filenames\u by\u satustag=Dict[str,List[str]]
没有创建字典…你能发布完整的错误和引起错误的代码吗?我没有从那一行中得到任何错误…
filenames\u by_satustag=Dict[str,List[str]]
没有创建字典…哦,我现在明白了,我所做的是:
现在你可以使用filenames\u by_satustag作为Dict[str,List[str]]类型
谢谢,我现在明白了,我所做的是说:
现在您可以使用文件名作为Dict[str,List[str]]类型
谢谢