Python principal

Funciones y métodos de Python

El método main () de Python contiene los métodos y el código que desea ejecutar en un programa principal. No es necesario porque Python ejecuta el código línea por línea, pero el método main () ayuda a que el código sea más legible.

& ldquo; He visto algunos tutoriales que usan main () en Python. ¿Qué significa? & Rdquo; Esa es una gran pregunta. La función main () puede parecer trivial cuando no es realmente necesaria. 

Codificar se trata de ser conciso; Probablemente tenga curiosidad por saber por qué los desarrolladores quieren agregar más líneas de código en un programa. La función main () puede agregar algunas líneas extra de código a su programa Python, pero tiene un propósito importante. 

En esta guía, vamos a hablar sobre qué es la función main () y por qué es útil.




¿Qué es la función principal de Python? () ¿Función?

La función main () de Python le permite introducir lógica en sus programas de Python. Una función main () se ejecuta tan pronto como se ejecuta un programa. Define el orden en el que se deben ejecutar determinadas funciones.

La sintaxis de la función main () es:

 def main (): yourmaincode ... 

La función main () aparece en la parte inferior de un programa, después de que todos los módulos se han importado y las funciones se han Puede llamar a una función de Python en la parte inferior de su programa y se ejecutará. Pero puede resultar bastante confuso que el código en la parte inferior de un programa sea el programa principal. En otros lenguajes de programación como C++ y Java, todo el código principal de un programa está contenido dentro de una función principal.

Una función main () es una buena forma de descomponer todo el código de sus programas. Las personas que son nuevas en Python pero que conocen otros lenguajes de programación como C++ le agradecerán que agregue una función main () .

El 81% de los participantes dijeron que se sentían más seguros acerca de sus perspectivas laborales después de asistir a un campamento de entrenamiento. Asigne a un bootcamp hoy mismo.

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.

Hay dos partes de un Función principal de Python. La primera parte es la función main () real que almacena el código de nuestro programa principal. Llamemos a nuestra función cookies () e imprimamos la declaración: "Me gustan las cookies". desde dentro de una función main () :

 def cookies (): print ( "¡Las cookies son deliciosas!") Def main (): print ("Me gustan las cookies.") Cookies () 

Finalmente, llamemos a nuestra función en la parte inferior de nuestro programa:

 main () 

Ahora podemos ejecutar nuestro código:

 ¡Las cookies son deliciosas! ¡Me gustan las cookies! 

Está claro exactamente lo que está sucediendo en nuestro programa:

  • Cookies () es una función que imprime & ldquo; Las cookies son deliciosas & rdquo;
  • Cuando se ejecuta nuestro programa, nuestras dos funciones, cookies () y main () , se definen .
  • Luego llamamos a la función main () .
  • & ldquo; Me gustan las cookies. & rdquo; se imprime en la consola.
  • Se llama a la función cookies () , imprimiendo & ldquo; ¡Las cookies son deliciosas! & rdquo; a la consola.

Nuestro código no solo es más limpio, sino que también es más lógico. Si vienes de otro lenguaje como Java, sabrás lo útil que es esto.




¿Qué es Python? __name__?

La declaración __name__ de Python se refiere al nombre de un script. Si ejecuta un programa como un módulo, tomará el nombre del módulo. De lo contrario, __name__ tendrá el valor __main__, que se refiere al programa que está ejecutando.

Antes de hablar sobre las sentencias __name__ y __main__ que se usan a menudo junto con una función principal, tenemos que hablar sobre __name__. __name__ almacena el nombre de un programa .

Cuando ejecuta un archivo directamente, __name__ es igual a __main__ . Considere este archivo llamado print_name.py:

 print (__ name__) 

Podemos ejecutar nuestro código como th es:

 python print_name.py 

Nuestro código devuelve: < em> __ main__ .

Supongamos que importáramos esto como un módulo en un archivo llamado main.py. Creemos un archivo llamado main.py e importemos el módulo print_name:

 import print_name 

Ejecutemos name.py:

 python name.py 

Nuestro código devuelve:

 print_name 

El código dentro de nuestro archivo print_name.py se ejecuta porque lo importamos como un módulo en nuestro programa principal. El archivo print_name.py imprime __name__ en la consola. Debido a que importamos print_name como un módulo, el valor de __name__ es print_name.




¿Qué pasa si __name__ == __main__?

Las declaraciones de Python if __name__ == __main__ ejecutan el código que contienen si ejecuta un archivo directamente. Esta declaración evita que se ejecute algún código si un programa se llama como módulo.

Probablemente haya visto algo como esto en un programa de Python con una función principal:

 if __name__ ==" __main__ ": 

¿Qué significa esto? Esa es otra buena pregunta. En Python, cualquier variable que comience y termine con __ es una variable especial. Estos son valores reservados que tienen propósitos específicos en un programa Python.


__main__ se refiere al ámbito donde se ejecutará su código. Cuando ejecuta un archivo Python directamente, el valor de & ldquo; __ name __ & rdquo; se establece en & ldquo; __ main __ & rdquo ;. Sin embargo, cuando ejecuta un archivo como módulo, el valor de & ldquo; __ name __ & rdquo; no es & ldquo; __ main __ & rdquo ;; se establece en el nombre del módulo.

"Career Karma entró en mi vida cuando más lo necesitaba y rápidamente me ayudó a combinar 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

Esto significa que la línea de código anterior se evaluará como Verdadero cuando se ejecute nuestro programa. Pero esta línea solo se evaluará como Verdadero si ejecutamos nuestro programa directamente desde la línea de comando en lugar de desde un módulo Python .

Si hacemos referencia a nuestro archivo como un módulo, el contenido de Python & ldquo; if & rdquo ; declaración condicional no se ejecutará. Demostremos cómo funciona esto con un ejemplo.




Python if __name__ == __main__ Example

Creemos un nuevo Secuencia de comandos de Python llamada username.py. En este archivo, vamos a pedirle a un usuario que seleccione un nombre de usuario y verifique si tiene más de cinco caracteres. Si el nombre de usuario no tiene más de cinco caracteres, se le pedirá al usuario que elija un nuevo nombre de usuario.

Nosotros & rsquo; Comenzaremos definiendo una variable global para almacenar el nombre de usuario de nuestro usuario:

 username = "" 

Vamos a definir dos funciones. La primera función le pedirá al usuario que seleccione un nombre de usuario y verifique si tiene más de cinco caracteres. La segunda función imprimirá ese nombre de usuario en el shell de Python:

 def choose_username (): global username username = input ("Elija un nombre de usuario:") if len (nombre de usuario) & gt; 5: print ("Su nombre de usuario ha sido seleccionado.") Else: print ("Por favor elija un nombre de usuario de más de cinco caracteres.") Choose_username () def print_username (): print (username) 

Hemos utilizado las Python & ldquo; global & rdquo; palabra clave para que los contenidos asignados al & ldquo; nombre de usuario & rdquo; La variable dentro del método choose_username () será accesible globalmente. Ahora que hemos definido nuestras funciones, vamos a crear una función principal que llame a estas funciones:

 def main (): choose_username () print_username () 

Luego vamos a agregar la declaración if __name__ = & lsquo; __ main __ & rsquo; . Esto significa que si ejecutamos nuestro archivo fuente directamente, el intérprete de Python ejecuta nuestras dos funciones. Si lo ejecutamos como un módulo, el contenido de nuestro método main () no se ejecutará.

 if __name__ ==" __main__ ": main () 

Ejecutemos nuestro código:

 python username.py 

Nuestro código devuelve:

 Elija un nombre de usuario: CareerKarma Su nombre de usuario ha sido seleccionado. Career Karma 

Nuestro código ejecuta la función choose_username () , y luego ejecuta la función print_username () . Si seleccionamos un nombre de usuario que tiene menos de cuatro caracteres, veremos una respuesta como esta:

 Elija un nombre de usuario: CK Elija un nombre de usuario de más de cinco caracteres. Elija un nombre de usuario: 

Se nos pedirá que elija otro nombre de usuario. 

Si importáramos este código como un módulo, nuestra función main () no se ejecutaría.




Conclusión

La función main () se usa para separar bloques de código dentro de un programa Python. Si bien no es necesario escribir un main () en Python, escribir una es una buena manera de mejorar la legibilidad de su código.

Escribir una función main () es obligatorio en lenguajes como Java, por otro lado mano. Una función main () deja claro en qué orden las líneas de código se ejecutan dentro de un programa. Incluir una función main () en su programa es una buena práctica para todos los programadores por esta razón.

Ahora ya está listo para comenzar a escribir y trabajar con los métodos principales en Python como un profesional. Para obtener más recursos de aprendizaje de Python, consulte nuestro Guía de cómo aprender Python .





Python principal: StackOverflow Questions