Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara Menyenaraikan Modul yang Diimport dalam Python: sys.modules vs. globals()

Cara Menyenaraikan Modul yang Diimport dalam Python: sys.modules vs. globals()

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-28 08:17:021056semak imbas

How to List Imported Modules in Python: sys.modules vs. globals()

Menyenaraikan Modul Diimport dalam Python

Menyenaraikan semua modul yang diimport dalam skrip Python boleh berguna untuk pelbagai tujuan, seperti nyahpepijat atau menganalisis kebergantungan . Untuk mencapai matlamat ini, terdapat beberapa pendekatan untuk diterokai.

Satu kaedah mudah melibatkan memanfaatkan kamus sys.modules. Dengan mengakses sys.modules.keys(), anda boleh mendapatkan semula senarai rentetan yang mewakili nama semua modul yang diimport. Sebagai contoh, jika anda mempunyai kod berikut:

<code class="python">import os
import sys</code>

Anda boleh mendapatkan senarai modul yang diimport seperti berikut:

<code class="python">module_names = sys.modules.keys()
print(module_names)</code>

Pendekatan ini menyenaraikan semua modul yang diimport pada skop global dengan berkesan . Walau bagaimanapun, perlu diingat bahawa ia tidak termasuk modul yang diimport dalam fungsi atau kelas tertentu dalam skrip yang sama.

Untuk paparan yang lebih komprehensif yang merangkumi modul yang diimport secara tempatan, anda boleh memeriksa fungsi globals(). Fungsi ini mengembalikan kamus semua pembolehubah global dalam skop semasa. Anda kemudian boleh menggunakan kamus ini untuk mengenal pasti modul dengan menyemak jenisnya menggunakan isinstance(val, types.ModuleType).

Berikut ialah contoh kod:

<code class="python">import types

def imports():
    for name, val in globals().items():
        if isinstance(val, types.ModuleType):
            yield val.__name__</code>

Memanggil fungsi import() akan ulangi pembolehubah global dan hasilkan nama semua modul yang diimport. Perlu diingat bahawa kaedah ini tidak mengambil kira import tempatan atau import bukan modul seperti dari x import y.

Secara keseluruhannya, dengan memanfaatkan kamus sys.modules atau fungsi globals(), anda boleh menghitung dengan berkesan semua modul yang diimport dalam Python, memberikan fleksibiliti bergantung pada kedalaman maklumat yang anda perlukan.

Atas ialah kandungan terperinci Cara Menyenaraikan Modul yang Diimport dalam Python: sys.modules vs. globals(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn