Pensé que podría usar parámetros nombrados después de parámetros posicionales de longitud variable en una llamada de función en Python 2, pero obtengo un SyntaxError
cuando importo una clase python. Estoy escribiendo con el siguiente método "get", por ejemplo:Python, argumentos predeterminados de palabras clave después de argumentos posicionales de longitud variable
class Foo(object):
def __init__(self):
print "You have created a Foo."
def get(self, *args, raw=False, vars=None):
print len(args)
print raw
print vars
El error parece:
def get(self, *args, raw=False, vars=None):
^
SyntaxError: invalid syntax
Me gustaría ser capaz de llamar al método de varias maneras:
f = Foo()
f.get(arg1, arg2)
f.get(arg1, raw=True)
f.get(arg1, arg2, raw=True, vars=something)
etc.
¡Gracias a ti y a Imran! Su respuesta con el bloque de código de Imran y la sugerencia de docstring respondieron la pregunta perfectamente. – jkmacc