सरल मामलेकॉन्फ़िग फ़ाइल
का संबोधित करते हुए क्रॉस-प्लेटफॉर्म मैं एक अजगर कार्यक्रम है कि मैं दोनों * nix और विंडोज सिस्टम पर समर्थन करने का इरादा है। कार्यक्रम कम से कम वैश्विक स्तर पर विन्यास योग्य होना चाहिए। कॉन्फ़िगरेशन फ़ाइल को संबोधित करने के लिए कोई क्रॉस-प्लेटफ़ॉर्म तरीका है?
आईई। मैं
import configmagic
configFile = configmagic("myprogram", "mainconfig")
एक की तर्ज थोड़ा और अधिक उन्नत मामले
एक ही उपयोगकर्ता-विशिष्ट के लिए लागू किया जा सकता है के साथ के बजाय
import platform
if platform.system() == "Windows":
configFilePath = "C:\MyProgram\mainconfig.ini"
else:
configFilePath = "/etc/myprogram/mainconfig.ini"
कुछ लिखना चाहते हैं विन्यास? अर्थात। यूनिक्स के तहत ~user/.myprogram/
में कॉन्फ़िगरेशन को रखने के लिए, और HKEY_LOCAL_USER
विंडोज के तहत रजिस्ट्री अनुभाग में?
http://stackoverflow.com/questions/200599/whats-the-best-way-to-store-simple-user-settings-in-python और http://stackoverflow.com/questions/965694/ की संभावित डुप्ली व्हाट्स-द-आधिकारिक-तरीके-भंडारण-सेटिंग्स-के लिए-पायथन-प्रोग्राम – rubenvb
टिप के लिए धन्यवाद, लेकिन यह वास्तव में एक डुप्ली नहीं है। वे दो प्रश्न कॉन्फ़िगरेशन फ़ाइल के प्रारूप के बारे में हैं, जबकि मेरा प्रश्न इसके स्थान के बारे में है। – dpq
~/.myprogram का उपयोग न करें, एक्सडीजी बेसडियर स्पेक का उपयोग करें, जो परिभाषित करता है कि आपको कहां * कॉन्फ़िगरेशन को संग्रहीत/पढ़ना चाहिए। (डिफ़ॉल्ट रूप से, ~/.config/myprogram)। – WhyNotHugo