函数参数类型设置返回语法错误 [英] Function parameter type-setting returning SyntaxError

查看:38
本文介绍了函数参数类型设置返回语法错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个包含函数参数类型声明的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>

这篇关于函数参数类型设置返回语法错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆