मैकओएस एक्स के लिए पायथन 3.6.1 स्थापित करने के बाद, एक कंसोल का उपयोग करने या Python3 के साथ कुछ भी चलाने का प्रयास एक गुप्त त्रुटि संदेश देता है:
AttributeError: module 'enum' has no attribute 'IntFlag'
समस्या विश्लेषण
यह त्रुटि क्यों होती है, इसके बारे में जानने के लिए, हम प्रश्न में कोड की जांच करते हैं:
class RegexFlag(enum.IntFlag):
क्लास रेगेक्सफ्लैग enum.IntFlag से प्राप्त होता है , जो एनम मॉड्यूल का सदस्य है। हालाँकि, हमें त्रुटि का सामना करना पड़ता है क्योंकि पायथन एक AttributeError अपवाद फेंकता है, जो दर्शाता है कि मॉड्यूल एनम में IntFlag विशेषता का अभाव है। उपयोग में आने वाला एनम मॉड्यूल मानक लाइब्रेरी का नहीं हो सकता है। 3.5 से नीचे के पायथन संस्करणों के लिए डिज़ाइन किया गया enum34 पैकेज, Python 3.6.1 में मानक लाइब्रेरी के enum के साथ स्थापित किया जा सकता है।
enum की प्रामाणिकता की पुष्टि इसके फ़ाइल पथ का निरीक्षण करके की जा सकती है:
एनम आयात करें print(enum.__file__)यदि enum.__file__ मानक लाइब्रेरी स्थान (उदाहरण के लिए, /usr/local/lib/python3.6/enum.py) को इंगित नहीं करता है, तो enum34 पैकेज संभवतः है समस्या का कारण।import enum
print(enum.__file__)
स्थिति को सुधारने के लिए, enum34 को अनइंस्टॉल करें:
pip uninstall -y enum34वैकल्पिक रूप से , यदि कोड को 3.5 से पहले और 3.5 से अधिक दोनों पायथन संस्करणों पर चलाने की आवश्यकता है, तो एनम-कॉम्पैट पैकेज का उपयोग करने पर विचार करें। यह पैकेज केवल पुराने पायथन संस्करणों के लिए enum34 स्थापित करता है जिनमें मानक लाइब्रेरी के enum मॉड्यूल का अभाव है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3