Programación Web y Scripting > Python

 Las clases en python

<< < (2/2)

RadicalEd:
Todos los módulos son objetos y estos tienen un atributo __name__, este atributo depende de cómo se utiliza el módulo. Si se importa con import, __name__ es el nombre del fichero del módulo, sin la ruta al directorio ni la extensión. Pero también puede ejecutarse un módulo directamente como programa independiente, y en este caso __name__ adquiere un valor especial, __main__.

Extrax:
Lo siento pero no lo entiendo :( ... podrias poner un ejemplo comparando cuando se usa y cuando no?, gracias...  :unsure:

RadicalEd:
A ver cuando usas if __name__=='__main__' estás tratando de decir que si se está ejecutando desde el mismo script haga algo


--- Código: Python ---#!/usr/bin/env python#hola.py def hola():  print 'el programa se esta ejecutando directamente' def nohola():  print 'el programa se esta ejecutando desde otro programa' if __name__=='__main__':  hola()else:  nohola() #!/usr/bin/env python#print2.py import hola Ejecutalos y verás la diferencia

Extrax:
Muchas gracias, aora ya lo entiendo, o eso creo... :rolleyes: , si me equiboco corregirme.  
Lo que viene a ser es que si el modulo donde esta el codigo, es el principal y no tiene ningun modulo importado, __name__ es igual a  "__main__", sin embargo, si el modulo que estamos usando corre a cuenta de otro modulo que a sido importado (import hola), __name__ no es igual a "__main__" .

saludos :good:

RadicalEd:
Exacto.

Navegación

[0] Índice de Mensajes

[*] Página Anterior

Ir a la versión completa