La importancia del espacio de nombres a la hora de Importar modulos, y Tkinter.
Miguel Prada
miguel.register en gmail.com
Jue Mar 26 00:19:56 CET 2009
El 25/03/2009, a las 23:32, Josu Rodriguez <jrvilda en gmail.com>
escribió:
> Hola buenas a todos.
>
> Estoy buscando información sobre python y Tkinter, y estoy un poco
> confundido tras leer varios manuales y la FAQ de la lista.
>
> Según los manuales el realizar una importación absoluta de * módulo
> s,
> ensucia el espacio de nombres y no es es recomendable, pero ... casi
> todos
> los ejemplos sobre el módulo Tkinter aparecen de este modo.
>
> La pregunta es: ¿Es tan importante el ensuciar el espacio de nombres
> ? ¿Al
> ser Tkinter un modulo bastante principal, puede ser la excepción en
> este
> sentido?
A mí también me parece curioso. Algo parecido ocurre con los ejemplos
de pygame, donde siempre se hace
import pygame
from pygame.locals import *
En principio no creo que tenga que ser un problema "ensuciar" el
espacio de nombres demasiado. Por un lado está la posibilidad de que
los símbolos de varios espacios se pisen entre ellos, quedando vigente
el último importado; y por otro, supongo que el rendimiento del
programa se puede resentir si obligas al intérprete a manejar una
tabla de símbolos demasiado grande.
En todo caso, diría que no es un problema hasta que tu programa se
hace muy grande. Lo malo es que entonces puede ser ya tarde para hacer
algo al respecto, especialmente si se tiene en cuenta que puedes
tardar en descubrir el conflicto ya que los símbolos se sobreescriben
sin que se emita ningún error.
Con python soy todavía bastante novato, pero en mi experiencia con C y
C++ nunca he tenido problemas de este estilo. Supongo que habría que
escuchar la opinión de alguien más veterano en el mundo de python.
>
> Espero haberme explicado sobre mi duda.
Se puede decir más alto, pero no más claro ;)
Saludos,
Miguel.
>
------------ próxima parte ------------
_______________________________________________
Lista de correo Python-es
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes
Más información sobre la lista de distribución Python-es