pitón, SI nombre == ' principal ': el papel y los principios
Encuentra útil, bienvenido a discutir el aprendizaje mutuo juntos - Follow Me
A los archivos de pitón usados típicamente en dos maneras, en primer lugar como una secuencia de comandos se ejecuta directamente, y la segunda es la importación de otra secuencia de comandos pitón se llama (bloque de reutilización) realizaron. Así, si el nombre == 'principal': el papel de estos dos casos es a controlar la ejecución del código del proceso, el MI nombre == 'principal': bajo el código sólo (es decir, como un archivo de secuencia de comandos de ejecución directa) sólo en el primer caso será ejecutado, y no se ejecutará la importación a otros scripts. Ejemplos son los siguientes:
- La ejecución directa
de ejecución directatest.py
resultados como se muestra a continuación, se pueden imprimir con éxito dos líneas de cadenas de caracteres. Es decir, si el nombre == " principal ": el código antes y después de las sentencias se ejecutan.
- importación realiza
entonces el nuevo nombre de la carpeta en la misma import_test.py archivo de comandos, introduzca el siguiente código:
secuencia de comandos de ejecución import_test.py, la siguiente salida:
salida sólo la primera línea de la cadena de caracteres. Es decir, si el nombre == " principal ": antes de que se ejecuta la instrucción, no se ejecuta después.
razón
- Esto se debe a que cada archivo tiene una
__name__
variable, con el test.py archivo, si se ejecuta directamente,__name__
que es test.py, si la aplicación es la prueba en otro archivo. - Y cada archivo tiene una
__main__
constante, este valor constante en todo momento a test.py, a saber el nombre del archivo + .py - Además, cuando el módulo se ejecuta directamente, nombre == 'principal' es cierto.
Para ilustrar aún más, que entest.py
si el guión nombre == " principal ": Antes de unirse impresión ( nombre ), está a punto de nombre impreso. contenido de los archivos y los resultados son los siguientes:
Como se puede ver, cuando el valor de la variable de __name__ " principal ".
A continuación, ejecute import_test.py, los resultados de ejecución son los siguientes:
En este momento, en el valor de la variable de prueba test.py __name__, no satisface nombre == " principal condición", por lo tanto, no puede ejecutar el código subsiguiente.