argumentos posicionales de python

En Python , hay dos tipos de argumentos: argumentos < / a>. Estos argumentos deben aparecer en un orden particular, de lo contrario, el intérprete de Python devuelve un error.

En esta guìa, vamos a hablar sobre el " argumento posicional sigue al argumento de palabra clave " error y por qué se plantea. Veremos un fragmento de còdigo de ejemplo con este error para que podamos ver còmo resolverlo.

¬°Comencemos!

El problema: posicional el argumento sigue al argumento de la palabra clave

Echemos un vistazo a nuestro error completo:

Al igual que el idioma inglés, los lenguajes de programaciòn tienen sus propias reglas. Estas reglas se conocen como sintaxis. Nuestro error es un error de sintaxis, lo que significa que no hemos seguido una de las reglas que rigen còmo escribir un còdigo Python.

La siguiente parte de nuestro error nos dice qué está causando este error. . En este caso, nuestro còdigo debe tener un argumento posicional que aparezca después de un argumento de palabra clave.

Los argumentos posicionales son argumentos que aparecen en sus respectivas posiciones:

" a " y " b " se convierten en variables dentro de nuestra funciòn. Este còdigo funciona porque hemos especificado dos argumentos posicionales. " a " es igual a 2 y " b " es igual a tres. También podemos especificar estos argumentos como argumentos de palabras clave:

El 81% de los participantes dijeron que se sentìan más seguros sobre sus perspectivas laborales después de asistir a un bootcamp. Asigne a un bootcamp hoy.

El graduado promedio de bootcamp pasò menos de seis meses en la transiciòn de carrera, desde comenzar un bootcamp hasta encontrar su primer trabajo.

Sin embargo, no podemos especificar un argumento posicional primero y luego cambie a la sintaxis de la palabra clave.

Esto se debe a que Python tiene una funciòn especial llamada * args que procesa m√∫ltiples argumentos en una funciòn. Considere este còdigo:

Este còdigo usa * args. Esta palabra clave representa un n√∫mero variable de argumentos. Podemos pasar tantos argumentos a nuestra funciòn show_users () como queramos:

Nuestro còdigo devuelve: Alex Peter Violet Julie

Nuestros dos primeros argumentos, "a" y "b", tienen los valores "Alex" y "Peter", respectivamente.

Esto es porque si usa sintaxis posicional, los argumentos se asignan en el orden en que se pasan. Los √∫ltimos argumentos aparecen en el orden en que se indican porque * args representa una cantidad desconocida de argumentos adicionales.

Un ejemplo Situaciòn

Echemos un vistazo a un fragmento de còdigo que experimenta este error:

Esta funciòn acepta dos argumentos: ensaladas y pizzas. Nuestra funciòn imprime cada ensalada en el men√∫ de ensaladas y cada pizza en el men√∫ de pizzas en la consola.

Llamemos a nuestra funciòn:

Nuestro còdigo regresa:

Hay un error en nuestro còdigo, como esperábamos. Arreglemoslo.

La soluciòn

Para resolver este problema, debemos asegurarnos de que todos los argumentos posicionales estén antes de los argumentos de palabras clave. Cambiemos la forma en que llamamos a nuestra funciòn para reflejar esta regla:

Hemos especificado dos argumentos posicionales: ensaladas y pizzas. Alternativamente, podrìamos especificar " pizzas " como argumento de palabra clave después de " ensaladas & rdquo ;:

En este ejemplo, no es necesario agregar ning√∫n argumento de palabra clave porque no estamos usando el método * args. Dicho esto, agregar argumentos de palabras clave puede hacer que el còdigo sea más legible seg√∫n la cantidad de valores que se pasan a una funciòn.

Ejecutemos nuestro còdigo con esta llamada de funciòn revisada:

Nuestro còdigo imprime con éxito nuestras dos listas de Python.

Conclusiòn

Los argumentos posicionales deben aparecer antes de un argumento de palabra clave en Python. Esto se debe a que Python interpreta los argumentos posicionales en el orden en que aparecen. Luego, interpreta los argumentos de palabras clave que se han especificado.

Ahora está listo para resolver el error " argumento posicional sigue al argumento de palabra clave " como un experto desarrollador de Python !

" Career Karma entrò en mi vida cuando más lo necesitaba y rápidamente me ayudò a emparejarme con un bootcamp. ¬°Dos meses después de graduarme, encontré el trabajo de mis sue√±os que se alineaba con mis valores y metas en la vida! "

Venus, ingeniero de software en Rockbot