2012-02-10 12 views
7

के दौरान कॉन्फ़िगरेशन डेटा के लिए पूछें मैं अपने पायथन एप्लिकेशन को PIP के साथ पैकेज करता हूं, जो setup.py प्रदान करता है। स्थापना के दौरान, मैं उपयोगकर्ता को कई मानों (उपयोगकर्ता नाम, अन्य कॉन्फ़िगरेशन मान) के लिए पूछना चाहता हूं, फिर इन मानों को उपयोगकर्ता निर्देशिका के अंदर संग्रहीत अनुप्रयोग कॉन्फ़िगराइल के अंदर सहेजा जाता है।पायथन setup.py: सेटअप

क्या सेटअप के दौरान इन कॉन्फ़िगरेशन मानों के लिए पूछने के लिए कोई विशेष पीआईपी/distutils-way है? या मैं सिर्फ इस तरह, उपयोगकर्ता पूछने के लिए input उपयोग करना चाहिए:

#!/usr/bin/env python 

from distutils.core import setup 

cfg['name'] = input("Please your username:") 
cfg.save() 

setup(name='appname', 
     version='1.0', 
     description='App Description', 
     author='Author', 
     author_email='[email protected]', 
     packages=['mypackage'], 
    ) 

या मैं इन मूल्यों के लिए पूछ बाहर छोड़ देना चाहिए, और इसके बजाय उपयोगकर्ता पहली शुरुआत पर आवेदन कॉन्फ़िगर कर सकते हैं?

मुझे पता है कि इन सभी तरीकों से संभव है, लेकिन क्या इसके लिए कोई सम्मेलन या सर्वोत्तम प्रथाएं हैं? या क्या आप एक लोकप्रिय पायथन परियोजना के बारे में जानते हैं जो समान सामान कर रहा है जो एक अच्छा उदाहरण है?

+1

मुझे नहीं लगता कि इस तरह की चीजों के लिए 'मानक' है। मैं इंस्टालेशन के बाद तक सेटिंग्स के लिए पूछने में देरी करना चाहता हूं जब तक कि वास्तविक स्थापना के लिए आवश्यक कुछ पथ न हों। – Bogdan

+1

आपको उपयोगकर्ता इंटरैक्शन के लिए इंस्टॉलेशन चरण का उपयोग नहीं करना चाहिए। यदि आप उपयोगकर्ता से कुछ पूछना चाहते हैं तो एप्लिकेशन को पहली बार चलाने पर ऐसा करें। –

उत्तर

2

setup.py आपको पायथन पैकेज स्थापित करने के लिए बहुत ही प्राचीन इंटरफ़ेस प्रदान करता है। आप config file का उपयोग कर सकते हैं या अपने आवेदन के लिए कुछ जीयूआई इंस्टॉलर बना सकते हैं।

एक और तरीका आपके आवेदन के लिए ओएस निर्भर पैकेज (डीबी, आरपीएम, विंडोज़ के लिए एमएसआई) बनाना है।

संबंधित मुद्दे