Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah saya boleh menyenaraikan semua modul yang diimport dalam skrip Python saya?
Menyenaraikan Modul yang Diimport dalam Python
Apabila bekerja dengan skrip Python, selalunya menjadi perlu untuk menentukan modul yang telah diimport. Maklumat ini boleh berguna untuk penyahpepijatan, analisis pergantungan modul dan banyak lagi. Artikel ini akan meneroka pendekatan yang berkesan untuk menyenaraikan semua modul yang diimport dalam skrip Python.
Untuk mendapatkan senarai lengkap modul yang diimport, termasuk yang diimport oleh modul import lain, kamus sys.modules boleh digunakan. Kamus ini mengandungi pasangan nilai kunci yang mana kuncinya ialah nama modul dan nilainya ialah modul itu sendiri. Dengan mengulang melalui kekunci sys.modules, semua modul yang diimport boleh dikenal pasti:
import sys for module_name in sys.modules.keys(): print(module_name)
Untuk pendekatan yang lebih tepat yang memfokuskan semata-mata pada modul yang diimport dalam modul semasa, fungsi globals() boleh digunakan . Fungsi ini mengembalikan kamus yang mengandungi semua pembolehubah global yang ditakrifkan dalam modul. Dengan menapis kamus ini untuk nilai yang merupakan contoh jenis.ModuleType, hanya modul yang diimport akan dikekalkan:
import types def imports(): for name, val in globals().items(): if isinstance(val, types.ModuleType): yield val.__name__
Kaedah ini, bagaimanapun, mempunyai had. Ia tidak termasuk modul yang diimport menggunakan penyata import tempatan atau bukan modul, seperti daripada x import y. Selain itu, ia menyediakan nama modul asal walaupun alias digunakan semasa import.
Dengan memanfaatkan teknik yang disediakan, pembangun boleh menghitung dengan cekap semua modul yang diimport dalam skrip Python mereka, meningkatkan pemahaman mereka tentang kebergantungan modul dan keseluruhan fungsi skrip.
Atas ialah kandungan terperinci Bagaimanakah saya boleh menyenaraikan semua modul yang diimport dalam skrip Python saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!