我有一个包含函数参数类型声明的python脚本,如下所示:
def dump_var(v: Variable, name: str = None):
据我所知,这是为函数设置输入参数类型的有效语法,但它返回一个
SyntaxError: invalid syntax
可能出了什么问题?
语法错误是因为Python2.7不支持类型提示。您可以使用Python 3.5+,也可以在注释中使用Python 2.7的类型提示,如PEP 484建议的那样:
针对Python 2.7和跨区代码的建议语法
某些工具可能希望在必须与Python2.7兼容的代码中支持类型批注。为此,此PEP有一个建议的(但不是强制的)扩展,其中函数注释放在# type:
注释中。这样的注释必须紧跟在函数头之后(在文档字符串之前)。示例:以下Python 3代码:def embezzle(self, account: str, funds: int = 1000000, *fake_receipts: str) -> None: """Embezzle funds from account using fake receipts.""" <code goes here>
等同于:
def embezzle(self, account, funds=1000000, *fake_receipts): # type: (str, int, *str) -> None """Embezzle funds from account using fake receipts.""" <code goes here>
这篇关于函数参数类型设置返回语法错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!