Red de conocimiento informático - Material del sitio web - Escribir scripts de Python en la universidad, ¡además de esto!

Escribir scripts de Python en la universidad, ¡además de esto!

¡Escribe un script en Python y agrega esto!

Al escribir scripts de Python, asegúrese de agregar esto

Para aquellos que usan Python, ya sea para mejorar

la eficiencia o para satisfacer necesidades específicas, los scripts de Python son algo común y útil.

Sin embargo, recientemente descubrí un problema que no conocía antes, es decir, si agregar la declaración if_name_=="_main_": en el script tendrá un impacto significativo en la forma en que se ejecuta el script. , y entre ellos hay mucho que aprender.

Malentendidos comunes

Muchos amigos son más informales al escribir guiones simples, se escriben directamente en hojas de papel sin

funciones y se ejecutan en secuencia. Para scripts más complejos, se pueden agregar funciones. Esta

La legibilidad es muy pobre y las personas a menudo no pueden encontrar la secuencia de entrada y ejecución del programa.

La forma recomendada de escribir scripts es agregar las siguientes

declaraciones:

Al escribir scripts de Python, asegúrese de agregar lo siguiente

Leer La mayoría de la gente aquí diría: "¿Qué hay de malo en esto? No importa si lo agregamos o no".

¡No importa!

No te preocupes por descartarlo, ¡analicemoslo detenidamente!

Cuál es el punto

Antes de entrar en detalles sobre la función de if_name_=='_main_', comencemos con un ejemplo visual simple

.

Echemos un vistazo a los resultados de ejecutar area.py:

Al ejecutar la variable PI, la entrada se introduce desde la función train() en const.py

Imprimir, y solo hicimos referencia a la variable, no a la función, por lo que

es esto lo que no queremos ver.

La solución a este problema también es muy simple. Solo necesitamos agregar

una oración en const.py:

Ejecutar area.py nuevamente. El resultado es el siguiente:

Esto es lo que esperamos.

Entrada de programa

El ejemplo anterior muestra que si no hay if_name_=="_main_":

Todo el código en const.py se importa al Se ejecutará el archivo area.py

, pero si se agrega if_name_=="_main_": se ejecutará todo el código en const.py

, y si if_name_==" _main_", entonces solo se ejecutará la parte importada del código. Dado que los módulos se refieren entre sí, diferentes módulos pueden tener tales definiciones,

y solo puede haber un programa de entrada, y qué programa de entrada se selecciona depende del valor de __nombre_.

.