मुझे एक आसान तरीका पता नहीं है। एक पाइथन वितरण (यानी जो कुछ स्थापित किया गया था, जैसे Django 1.3) में शून्य या अधिक पायथन मॉड्यूल, शून्य या अधिक पायथन पैकेज हो सकते हैं (यानी मॉड्यूल जिनमें सबमिड्यूल हैं, अन्य टूल्स कॉल पैकेज नहीं हैं), शून्य या अधिक स्क्रिप्ट, शून्य या अधिक डेटा की फ़ाइलें। यदि आप पाइप या easy_install के साथ स्थापित हैं, तो मेटाडाटा फ़ाइलों को अंडे-जानकारी निर्देशिकाओं/फ़ाइलों/ज़िपित निर्देशिकाओं में लिखा जाता है, इसलिए एक उपकरण इन फ़ाइलों को प्रदर्शित करने के लिए चला सकता है कि वितरण के लिए कौन से मॉड्यूल या पैकेज स्थापित किए गए थे, लेकिन मुझे कोई नहीं पता वह उपकरण जो करता है।
जर्दी और पीआईपी फ्रीज केवल वितरण को सूचीबद्ध करेगा (भले ही वे उन्हें पैकेज कहते हैं), ताकि आपको यह पता चल सके कि कौन सा संस्करण स्थापित है, और फिर आप उन्हें अपग्रेड या अनइंस्टॉल कर सकते हैं।
sys.modules का निरीक्षण केवल वर्तमान पायथन सत्र के दौरान आयातित मॉड्यूल के बारे में जानकारी देता है।
इसलिए यह जानने के लिए कि वितरण को स्थापित करने के बाद आपके सिस्टम पर कौन से मॉड्यूल आयात योग्य हैं, आपको साइट-पैकेज और इसी तरह की निर्देशिकाओं के कच्चे निरीक्षण का सहारा लेना होगा, या पैकेजिंग मेटाडेटा फ़ाइलों पर चलने और मॉड्यूल निकालने के लिए कुछ कोड लिखना होगा।यह शुद्ध distutils के साथ स्थापित वितरण के लिए काम नहीं करेगा।
यह स्पष्ट रूप से अपूर्ण और भ्रमित है; हम अभी भी पायथन पैकेजिंग पर काम कर रहे हैं।
बीटीडब्ल्यू, क्या मैं पूछ सकता हूं कि आपके प्रश्न के लिए उपयोग केस क्या है? आम तौर पर आप इसके साथ कुछ करने के लिए एक वितरण स्थापित करते हैं, और वही दस्तावेज जो आपको बताता है कि इंस्टॉल करना है, आपको बताएगा कि आयात करना क्या है।
स्रोत
2013-02-03 17:10:40
मेरे करीबी वोट को अनदेखा करें: एक बड़ा अंतर है (बहुत तेज़ पढ़ें) – ChristopheD
क्या आपने [स्टैलियन] (http://pyevolve.sourceforge.net/wordpress/?p=2200) की कोशिश की है? – Tarantula