Volver a la página principal
lunes 10 febrero 2025
3

Qué es if __name__ == "__main__": en Python

En Python, la estructura if __name__ == "__main__": se usa para indicar que un script está siendo ejecutado directamente y no importado como módulo en otro programa. Esto permite que ciertas partes del código solo se ejecuten cuando el archivo se ejecuta como un programa principal.

Explicación detallada

Cuando Python ejecuta un script, define automáticamente una variable especial llamada __name__. Su valor depende de cómo se ejecuta el script:

  • Si el script se ejecuta directamente, __name__ toma el valor "__main__".
  • Si el script se importa en otro archivo, __name__ toma el nombre del módulo (el nombre del archivo sin la extensión .py).

Ejemplo práctico

# archivo script.py

def funcion():
    print("Esta función se ha ejecutado")

if __name__ == "__main__":
    print("Este script se está ejecutando directamente")
    funcion()

Caso 1: Ejecutando el script directamente

Si ejecutamos script.py, la salida será:

Este script se está ejecutando directamente
Esta función se ha ejecutado

Caso 2: Importando el script desde otro archivo

Si importamos script.py en otro archivo, como en otro_script.py:

import script

La salida será vacía, porque el bloque dentro de if __name__ == "__main__": no se ejecutará.

¿Por qué usarlo?

1. Evita la ejecución de código al importar el módulo.

2. Permite reutilizar funciones y clases sin ejecutar el código principal.

3. Facilita la estructuración de programas Python grandes.

Etiquetas:
python
Compartir:
Creado por:
Author photo

Jorge García

Fullstack developer