
Alfredo N. Rodriguez
Pregunta¿Alguien me puede explicar le if name == “main” ? Para qué sirve, y qué hace.

Marvin Alvarenga
Hola, un gusto Alfredo.
Python automáticamente agrega una variable especial llamada __name__ a cada módulo que tu tengas. Por ejemplo, si tu tienes un módulo llamado "mi_modulo.py"; entonces si tu consultas el valor de __name__ dentro de dicho módulo, el valor que tendrá asignado es el siguiente string "mi_modulo", como puedes ver, la variable contiene el nombre del módulo o el nombre del archivo, como quieras verlo.
Hay un caso especial, cuando tu invocas desde la terminal a un módulo específico, algo como "python mi_modulo.py", la variable __name__ toma un valor especial: el siguiente string "__main__".
Entonces, en pocas palabras: el código que esté dentro de la condición
if __name__ == '__main__': # Mi código
Se ejecutará únicamente si el módulo fue ejecutado explícitamente desde la terminal.

Carlos Eduardo Gomez García
Es el punto de entrada, en Python puedes tener varios puntos de entrada (por ejemplo, que tu código sea llamado como una dependencia externa). Para este caso, el código es llamado directamente por el comando de
python
if name == "main"