Python Language Importando todos los nombres de un módulo


Ejemplo

from module_name import *

por ejemplo:

from math import *
sqrt(2)    # instead of math.sqrt(2)
ceil(2.7)  # instead of math.ceil(2.7)

Esto importará todos los nombres definidos en el módulo math en el espacio de nombres global, excepto los nombres que comienzan con un guión bajo (lo que indica que el escritor siente que es solo para uso interno).

Advertencia : si una función con el mismo nombre ya se definió o importó, se sobrescribirá . Casi siempre importando solo nombres específicos from math import sqrt, ceil es la forma recomendada :

def sqrt(num):
    print("I don't know what's the square root of {}.".format(num))

sqrt(4)
# Output: I don't know what's the square root of 4.

from math import * 
sqrt(4)
# Output: 2.0

Las importaciones destacadas solo se permiten a nivel de módulo. Los intentos de realizarlas en definiciones de clase o función dan como resultado un SyntaxError .

def f():
    from math import *

y

class A:
    from math import *

ambos fallan con:

SyntaxError: import * only allowed at module level