¿Dónde busca módulos Python?

Los módulos son simplemente un archivo python .py desde el cual podemos usar funciones, clases, variables en otro archivo. Para usar estas cosas en otro archivo, primero debemos importar ese módulo en ese archivo y luego podemos usarlos. Los módulos pueden existir en varios directorios.

En este artículo, discutiremos dónde busca Python los módulos.

Python busca módulos en 3 pasos: –

  1. Primero, busca en el directorio actual.
  2. Si no lo encuentra, busca en los directorios que están en la variable de shell PYTHONPATH
  3. Si eso también falla, Python comprueba la lista de directorios dependiente de la instalación configurados en el momento en que se instala Python.

Ahora analizaremos cada uno de estos pasos:

Paso 1: En primer lugar, Python busca en el directorio actual. Desde el directorio actual nos referimos al directorio en el que existe el archivo que llama al módulo. Podemos verificar el directorio de trabajo desde el módulo os de python mediante el método os.getcwd() . El directorio devuelto por este método se denomina directorio actual. El código para obtener el directorio actual es:

Python

# importing os module
import os       
 
# printing the current working directory
print(os.getcwd())

El resultado del código anterior será el directorio de trabajo actual en el que primero se buscará un módulo para importar.

Paso 2: si el módulo que debe importarse no se encuentra en el directorio actual. Luego, Python lo buscará en PYTHONPATH, que es una lista de nombres de directorio, con la misma sintaxis que la variable de shell PATH. Para conocer los directorios en PYTHONPATH simplemente podemos obtenerlos mediante el módulo sys . El sys.path nos da la lista de todas las rutas donde se buscará el módulo cuando se necesite importar. Para ver estos directorios tenemos que escribir el siguiente código:

Python

# importing the sys module
import sys        
 
# printing sys.path variable of sys module
print(sys.path)
Salida
[‘/home’, ‘/usr/lib/python2.7’, ‘/usr/lib/python2.7/plat-x86_64-linux-gnu’, ‘/usr/lib/python2.7/lib-tk ‘, ‘/usr/lib/python2.7/lib-old’, ‘/usr/lib/python2.7/lib-dynload’, ‘/usr/local/lib/python2.7/dist-packages’, ‘ /usr/lib/python2.7/dist-paquetes’]
 

Paso 3: si el módulo no se encuentra en los 2 pasos anteriores, el intérprete de python intenta encontrarlo en la lista de directorios dependientes de la instalación que se configuran en el momento de la instalación de python. Estos directorios también se incluyen en la variable sys.path del módulo sys y se pueden conocer de la misma manera que en el paso anterior. El código será:

Python

# importing the sys module
import sys        
 
# printing sys.path variable of sys module
print(sys.path)
Salida
[‘/home’, ‘/usr/lib/python2.7’, ‘/usr/lib/python2.7/plat-x86_64-linux-gnu’, ‘/usr/lib/python2.7/lib-tk ‘, ‘/usr/lib/python2.7/lib-old’, ‘/usr/lib/python2.7/lib-dynload’, ‘/usr/local/lib/python2.7/dist-packages’, ‘ /usr/lib/python2.7/dist-paquetes’]
 

Publicación traducida automáticamente

Artículo escrito por yashgupta0524 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *