"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo puedo obtener una lista de módulos importados en mi programa Python?

¿Cómo puedo obtener una lista de módulos importados en mi programa Python?

Publicado el 2024-11-01
Navegar:989

How can I get a list of imported modules in my Python program?

Obtener una lista de módulos importados

Enumerar módulos importados es una técnica valiosa para comprender las dependencias y la estructura de un programa Python. Afortunadamente, Python proporciona un método sencillo para recuperar esta información.

Para enumerar todos los módulos importados a su programa, utilice el siguiente código:

import sys
sys.modules.keys()

Este fragmento accede al diccionario sys.modules, que contiene claves que representan los nombres de los módulos. Al iterar sobre estas claves, puede recuperar una lista de módulos importados.

Por ejemplo, dado el código:

import os
import sys

El resultado de ejecutar 上記のコード es ['os', 'sys'], proporcionándole los nombres de los módulos importados.

Si está interesado en obtener una lista de importaciones específicamente dentro del módulo actual, puede emplear el siguiente enfoque:

import types
def imports():
    for name, val in globals().items():
        if isinstance(val, types.ModuleType):
            yield val.__name__

Esta función realiza una introspección de los globales() del módulo actual y filtra las entradas que son instancias de los tipos.ModuleType. Esta aproximación devuelve los nombres de los módulos originales incluso si se usaron alias en las importaciones.

Tenga en cuenta que esta función no incluye importaciones locales o importaciones que no sean de módulos como 'desde x importar y'. Además, devuelve val.__name__, que corresponde al nombre del módulo original. Para obtener los alias, puede utilizar el nombre de rendimiento en la función.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3