Python error invalid syntax for method arguments
In python you can have error related to named/keyword arguments like:
def method(arg1, arg_list: List[str] = None):
^
SyntaxError: invalid syntax
This error most probably is related to python version incompability. In other words this code is valid Python 3 code but invalid in Python 2. In order to fix the problem you have several options like:
- migrate your code to Python 3
- workaround the problem
Migrating or porting your code to Python 3 is tough but important job(since Python 2 support ends in 2020). At least you can try to run your program in Python 3 vritual environment.
In some cases it's easier to workaround the problem by:
In python 3
def method(arg1, arg2=1, arg3=2):
pass
In python 2
def method(arg1, **kwargs):
arg2 = kwargs.pop('arg2', 1)
arg3 = kwargs.pop('arg3', 2)
The idea is simple - get arguments from kwargs if not then use default values.