在python中使用* args和一个默认参数

时间:2013-07-14 19:49:02

标签: python variadic-functions default-parameters

我有一个既使用默认参数又使用* args:

的函数
def greeting(name, *args, exclamation='yo!'):
    for arg in args:
        print(name, arg, exclamation)

这似乎工作正常。但是,当我用flake8检查它时,它会返回:

1 col 38| E901 SyntaxError: invalid syntax

我坚持不懈地遵循正确的做法并清除我的支票。我做错了吗?是一种不同的方法标准吗?

1 个答案:

答案 0 :(得分:1)

正如iCodez猜测的那样,这是无意中使用为Python 2.x设计的flake8版本的结果。使用sudo pip-3.2 install flake8安装Python 3版本解决了这个问题。