• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
    • Preguntas
    • Profesores
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Pruebas Online
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

433
Vistas
el argumento posicional sigue al argumento de la palabra clave

Estoy llamando a una función como esta en python.

 order_id = kite.order_place(self, exchange, tradingsymbol, transaction_type, quantity, price, product, order_type, validity, disclosed_quantity=None, trigger_price=None, squareoff_value, stoploss_value, trailing_stoploss, variety, tag='')

Aquí está el código de la documentación de la función ..

 def order_place(self, exchange, tradingsymbol, transaction_type, quantity, price=None, product=None, order_type=None, validity=None, disclosed_quantity=None, trigger_price=None, squareoff_value=None, stoploss_value=None, trailing_stoploss=None, variety='regular', tag='')

Me esta dando un error como este..

ingrese la descripción de la imagen aquí

¿Cómo resolver este error? Gracias !

almost 3 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

La gramática del lenguaje especifica que los argumentos posicionales aparecen antes de la palabra clave o los argumentos destacados en las llamadas:

 argument_list ::= positional_arguments ["," starred_and_keywords] ["," keywords_arguments] | starred_and_keywords ["," keywords_arguments] | keywords_arguments

Específicamente, un argumento de palabra clave se ve así: tag='insider trading!' mientras que un argumento posicional se ve así: ..., exchange, ... . El problema radica en que parece haber copiado/pegado la lista de parámetros y dejado algunos de los valores predeterminados en su lugar, lo que hace que parezcan argumentos de palabras clave en lugar de posicionales. Esto está bien, excepto que luego vuelve a usar argumentos posicionales, lo cual es un error de sintaxis.

Además, cuando un argumento tiene un valor predeterminado , como price=None , eso significa que no tiene que proporcionarlo. Si no lo proporciona, utilizará el valor predeterminado en su lugar.

Para resolver este error, convierta sus argumentos posicionales posteriores en argumentos de palabras clave o, si tienen valores predeterminados y no necesita usarlos, simplemente no los especifique:

 order_id = kite.order_place(self, exchange, tradingsymbol, transaction_type, quantity) # Fully positional: order_id = kite.order_place(self, exchange, tradingsymbol, transaction_type, quantity, price, product, order_type, validity, disclosed_quantity, trigger_price, squareoff_value, stoploss_value, trailing_stoploss, variety, tag) # Some positional, some keyword (all keywords at end): order_id = kite.order_place(self, exchange, tradingsymbol, transaction_type, quantity, tag='insider trading!')
almost 3 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda