[英]How do I specify a dict dtat type in a python 3 parameter
我试图将dict变量传递给Python 3中的函数,然后尝试通过调用.keys()函数来遍历键。 但是我不知道如何指定参数的类型。
def DisplayStock(StockDict):
for key in StockDict.keys():
我得到的错误是
for key in StockDict.keys():
AttributeError: 'function' object has no attribute 'keys'
似乎您只是在向函数传递错误信息。 从错误看来,您正在给它一个功能。 也许您应该将()
放在引起错误的参数后面。
通常,您不需要指定类型。 该函数可以采用任何类型。
如果要检查传递的参数是否为字典,则可以使用:
if isinstance(Stockdict, dict):
for key in Stockdict.keys()
不过,这不是很pythonic。 只是不要将非dict这样的对象传递给函数。
我想你问pep-484
def DisplayStock(StockDict: dict):
for key in StockDict.keys()
StockDict
是参数名称, dict
是参数类型。
问题不在于参数类型。 Python很高兴只提供一个变量名和原始代码,然后使用.keys方法。 错误出在代码的其他部分,我错过了函数调用的括号,并将字典对象设置为函数引用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.