Articles of espacios de nombres de

¿Cómo manejar los paquetes de python con nombres en conflicto?

Estoy usando dos paquetes de python que tienen el mismo nombre. http://www.alembic.io/updates.html https://pypi.python.org/pypi/alembic ¿Hay alguna forma canónica o pirónica de manejar la instalación de dos paquetes con nombres en conflicto? Hasta ahora, solo ocasionalmente he necesitado uno de los paquetes durante el desarrollo / construcción, así que he estado usando un virtualenv separado para lidiar […]

En Python, ¿cómo puedo acceder al espacio de nombres del módulo principal desde un módulo importado?

Específicamente, necesito obtener algunos objetos y globales del módulo principal en un módulo importado. Sé cómo encontrar esas cosas cuando el módulo principal quiere algo particular de un módulo secundario, pero no puedo averiguar cómo ir en la otra dirección.

importar con * (asterisco) en lugar de como un espacio de nombres en python

Sé que es una mala forma de usar import * en python, y no planeo convertirlo en un hábito. Sin embargo, recientemente me encontré con un comportamiento curioso que no entiendo, y me pregunté si alguien podría explicármelo. Digamos que tengo tres scripts de python. El primero, first_script.py , comprende: MESSAGE = ‘this is from […]

¿Cómo encontrar el “nombre de importación” de cualquier paquete en Python?

Me pregunto si hay alguna forma confiable y consistente de obtener el “nombre de importación” / espacio de nombres de un paquete Python. Por ejemplo; Paquete ; django-haystack Nombre de importación almiar o Paquete ; ipython Nombre de importación IPython Hasta ahora lo sé, PyPi no almacena esa información que he comprobado con PyPiXmlRpc. También […]

Importando espacio de nombres global en python

digamos que tengo los siguientes archivos: a.py glo_var = 0 def func(): global glo_var glo_var = 5 print “A %d” % (glo_var) b.py from a import * func() print “B %d” % (glo_var) Si ejecuto b.py la salida es: A 5 B 0 Mi pregunta es, cómo importar el espacio de nombres global para que […]

¿Cuál es la ventaja de un guión bajo en los nombres de Python?

Estoy acostumbrado a nombrar los argumentos de Python de esta manera: my_argument=’foo’ ¿Cuál es la ventaja si hago esto en su lugar? my_argument_=’foo” ¿Como es recomendado por PEP008? Debe haber una buena razón para el subrayado final, entonces, ¿qué es eso?

Python: ¿Por qué debería estar prohibido ‘desde importar *’?

Si por casualidad tienes from import * en medio de su progtwig (o módulo), recibirá la advertencia: /tmp/foo:100: SyntaxWarning: import * only allowed at module level Entiendo por qué se desaconseja import * en general (invisibilidad del espacio de nombres), pero hay muchas situaciones en las que sería conveniente, especialmente cuando el código no se […]

socket.error: no puede asignar la dirección y el espacio de nombres solicitados en python

El software de mi servidor dice errno99: cannot assign requested address mientras se usa una dirección IP que no sea 127.0.0.1 para el enlace. Pero si la dirección IP es 127.0.0.1 funciona. ¿Está relacionado con los espacios de nombres? Estoy ejecutando mis códigos de servidor y cliente en otro progtwig de Python llamando a execfile() […]

espacio de nombres python: __main __. La clase no es una instancia del paquete.Clase

Tenga en cuenta que tiene dos archivos de Python como se define a continuación. Digamos que uno es un paquete general ( class2 ), y el otro hace reemplazos específicos y sirve como ejecutable ( class1 ). class1.py: #!/usr/bin/python class Test(object): pass class Verificator(): def check(self, myObject): if not isinstance( myObject, Test ): print “%s […]

NameError: el nombre global no está definido

Estoy usando Python 2.6.1 en Mac OS X. Tengo dos archivos Python simples (a continuación), pero cuando ejecuto python update_url.py Me subo a la terminal: Traceback (most recent call last): File “update_urls.py”, line 7, in main() File “update_urls.py”, line 4, in main db = SqliteDBzz() NameError: global name ‘SqliteDBzz’ is not defined Intenté cambiar el […]