Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Qué es Python __name__?

¿Qué es Python __name__?

Cuando se crea un módulo (archivo .py) en Python, algunas variables integradas se cargan automáticamente y __name__ es una de ellas. Muchas variables y funciones generalmente se definen en los módulos de Python, lo que equivale a una función en el módulo. El módulo se importa a otros archivos y se puede llamar. Entonces el papel de __nombre__ se resalta en este momento. Identifica el nombre del módulo y muestra si la funcionalidad del módulo la realiza él mismo o mediante otro archivo. Supongamos que los módulos A y B definen la función C por sí mismos, el módulo B llama al módulo A y ahora ejecuta la función C:

Si C es ejecutado por A mismo, es decir, el módulo ejecuta su propia función definida , entonces _ _ name _ = =' _ _ main _ _ '

Si C es llamado por B, es decir, el módulo actual llama para realizar las funciones de otros módulos, entonces _ _ name _ = =' a '(nombre del módulo llamado).

De hecho, dicho de otra manera, es el módulo en el que se ejecuta el programa actual.

Recomendaciones relacionadas: Curso de introducción a Python

El siguiente es un ejemplo:

Primero personalice el módulo Student y defina la función diferencia() en el módulo.

Luego ejecútelo usted mismo primero, el resultado es el siguiente, _ _ name _ = =' _ _ main _ _ '

Luego llame a b para ejecutar, el resultado es _ _ name _ = =' estudiante '

Los resultados anteriores se dan dos veces porque el módulo de importación en Python ejecutará el archivo primero, como se muestra a continuación:

Alguien puede haber notado que lo anterior __main__ está en Python Se puede usar como punto de entrada de la función, y en proyectos reales, si _ _ name _ = =' _ _ main _ ' generalmente se usa para representar el punto de entrada para que todo el proyecto comience a ejecutarse. Además, si no desea que otros módulos llamen y ejecuten ciertas funciones, como 'Mi contraseña es xxx' en mi módulo personalizado Estudiante, solo puede imprimir la contraseña si la ejecuta usted mismo. Por lo tanto, puede escribir parte en la declaración if y solo se puede ejecutar cuando _ _ name _ =' _ _ main _ _ '. Esto se puede entender de esta manera. Fuera de la declaración if, el código es la capa más externa, un poco como "variables globales". Cuando se pone en el if, se vuelve privado.