मेरे पास एक पायथन डेस्कटॉप एप्लिकेशन है जिसे उपयोगकर्ता डेटा स्टोर करने की आवश्यकता है। विंडोज़ पर, यह आमतौर पर %USERPROFILE%\Application Data\AppName\
में होता है, ओएसएक्स पर यह आमतौर पर ~/Library/Application Support/AppName/
होता है, और अन्य * निक्स पर यह आमतौर पर ~/.appname/
होता है।मैं पाइथन के लिए क्रॉस प्लेटफ़ॉर्म तरीके में डेस्कटॉप एप्लिकेशन डेटा कैसे संग्रहीत करूं?
मानक लाइब्रेरी में एक फ़ंक्शन मौजूद है, os.path.expanduser
जो मुझे उपयोगकर्ता की होम निर्देशिका प्राप्त करेगा, लेकिन मुझे पता है कि विंडोज़ पर, कम से कम, "एप्लिकेशन डेटा" उपयोगकर्ता की भाषा में स्थानीयकृत है। यह ओएसएक्स के लिए भी सच हो सकता है।
इस स्थान को पाने का सही तरीका क्या है?
अद्यतन: कुछ आगे अनुसंधान इंगित करता है कि पर OSX इस प्राप्त करने के लिए सही तरीका समारोह NSSearchPathDirectory का उपयोग करना है, लेकिन यह है कि कोको है, इसलिए इसे PyObjC पुल बुला मतलब है ...
http://pypi.python.org/pypi/appdirs/1.2.0 – tkone
में देखा करने के लिए डार्विन सामान लिनक्स के लिए बढ़िया है है आपको वास्तव में एक्सडीजी पथ का उपयोग करना चाहिए। – abergmeier
हार्ड कोडिंग "14" और "1" से बचने के लिए, यह बेहतर काम करता है: 'ऐपकिट आयात से NSSearchPathForDirectoriesInDomains, NSApplicationSupportDirectory, NSUserDomainMask' –