2015-02-11 8 views
18

मैंने स्पाइडर आईडीई में कार्यक्षेत्रों और परियोजनाओं के बारे में एक बुनियादी ट्यूटोरियल की खोज की है। जो मैं समझना चाहता हूं वह है कि मेरे कोड को व्यवस्थित करने के लिए वर्कस्पेस और परियोजनाओं का उपयोग कैसे करें, इसकी बुनियादी अवधारणाएं हैं। ऐसा लगता है कि यह शायद मूल प्रोग्रामिंग कौशल है और यही कारण है कि मुझे किसी भी प्रकार का अवलोकन ढूंढने में समस्याएं हैं। This page संबंधित प्रतीत होता है, लेकिन वास्तव में ग्रहण और बल्कि स्पैस के बारे में है। Pythonxy ट्यूटोरियल और documentation for Spyder किसी भी विवरण में नहीं जाता है। एनाकोंडा दस्तावेज भी नहीं करता है।स्पाइडर वर्कस्पेस और प्रोजेक्ट्स सेट करने की मूल बातें

सवाल मेरे पास है कर रहे हैं:

जब मैं किसी नए कार्यक्षेत्र सेट करना चाहिए (यदि कभी)?

मैं एक नई परियोजना कब बना सकता हूं?

PYTHONPATH मेरे कार्यक्षेत्र और परियोजना सेटिंग्स पर निर्भर करता है? क्या यह सभी मामलों में समान है या क्या मैं इसे वर्कस्पेस/प्रोजेक्ट में अनुकूलित कर सकता हूं?

क्या PythonPATH के अलावा अन्य सेटिंग्स हैं जिन्हें मुझे कॉन्फ़िगर करना चाहिए?

स्पाइडर के ऊपर दिए गए उत्तरों कितने विशिष्ट हैं? क्या ग्रहण की तरह अन्य आईडीई के लिए यह वही होगा?

मैं एनाकोंडा पैकेज के हिस्से के रूप में 64-बिट विंडोज 7 पर स्पाइडर चला रहा हूं।

+1

मुझे केवल दो लिंक जोड़ने की अनुमति है, लेकिन मैंने कुछ स्थानों का उल्लेख किया है जहां मैंने इसके बारे में अधिक जानने की कोशिश की। – Fredrik

उत्तर

5

मैं डेटा विश्लेषण के लिए स्पाइडर का उपयोग करता हूं और मैंने अभी प्रोजेक्ट वर्कस्पेस का उपयोग करना शुरू कर दिया है। मेरा मानना ​​है कि यह आपको संगठन के कारण बेहतर कोड लिखने की अनुमति देता है। जैसा कि पिछली पोस्ट के अनुसार कहा गया है कि "यह वेब विकास में सहायक हो सकता है", जो सच है क्योंकि वेब विकास के लिए फाइलों की जटिलता और वे एक दूसरे के साथ कैसे बातचीत करते हैं, अच्छे सॉफ्टवेयर इंजीनियरिंग की आवश्यकता होती है। इस संगठन/संरचना का भी डेटा विश्लेषण में उपयोग किया जा सकता है।

अक्सर, एनाकोंडा का उपयोग करने वाले डेटा विश्लेषकों में इंजीनियरिंग या विज्ञान पृष्ठभूमि होती है, जो आवश्यक रूप से सॉफ़्टवेयर इंजीनियरिंग या कंप्यूटर विज्ञान नहीं होती है। इसका मतलब है कि अच्छे सॉफ्टवेयर इंजीनियरिंग सिद्धांत गायब हो सकते हैं (स्वयं शामिल)। वर्कस्पेस सेट अप करना एक महत्वपूर्ण बात है जो मुझे विश्वास है कि चर्चा से गुम है। यह कार्यक्षेत्र को सिस्टम पथ में जोड़ता है। एक प्रोजेक्ट सेट करें और फिर

import sys 
print sys.path 

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

myScript.py

from myFunctions import func1 
from myFunctions import func2 
from myPlots import histPlot 

में यह डेटा विश्लेषण करने के लिए एक अधिक स्वच्छ दृष्टिकोण है और आप एक समय में एक विशेष कार्य पर ध्यान केंद्रित करने की अनुमति देता है।

पायथन 3 में %autoreload क्षमता है ताकि आप अपने कार्यों पर काम कर सकें और फिर अपनी स्क्रिप्ट फ़ाइल पर वापस जा सकें और यदि आपको त्रुटियां मिलती हैं तो यह उन्हें फिर से लोड कर देगी। मैंने अभी तक यह कोशिश नहीं की है कि मेरे अधिकांश काम 2.7 में हैं, लेकिन यह विकास करते समय भी अधिक लचीलापन जोड़ना प्रतीत होता है।

तो आपको यह कब करना चाहिए? मुझे लगता है कि यह हमेशा एक अच्छा विचार है, मैंने अभी इस सेटअप का उपयोग करना शुरू कर दिया है और मैं कभी वापस नहीं जाऊंगा!

+0

बहुत अच्छा जवाब !! इसके लिए आपको कुडोस !! –

7

मेरे अनुभव में, स्पाइडर में वर्कस्पेस सेट करना हमेशा आवश्यक नहीं है। एक वर्कस्पेस आपके कंप्यूटर पर एक स्थान है जहां आप अपनी सभी फ़ाइलों को बनाते और सहेजते हैं। वर्कस्पेस आमतौर पर आपकी प्रोजेक्ट फ़ाइलों को प्रबंधित करने में सहायता करते हैं। स्पाइडर में वर्कस्पेस बनाने के बाद, "प्रोजेक्ट एक्सप्लोरर" नामक एक फलक स्पाइडर के अंदर खुलता है। वहां आप रीयल-टाइम में अपनी परियोजना की फाइलें देखते हैं। उदाहरण के लिए, यदि आप पायथन के साथ एक फाइल जेनरेट करते हैं, तो वह उस फलक में दिखाएगा। फलक आप फ़ाइलों को व्यवस्थित रखते हैं, उन्हें फ़िल्टर करते हैं। यह उदाहरण के लिए वेब विकास के लिए उपयोगी हो सकता है क्योंकि आपकी सामग्री को व्यवस्थित रखने में आपकी सहायता करता है। मैं फ़ाइलों को संभालने के लिए पायथन का उपयोग करता हूं (उदा। सीएसवी) और डेटा (डेटा विश्लेषण) के साथ काम करता हूं, और मुझे वर्कस्पेस सुविधा में कोई उपयोग नहीं मिलता है। इसके अलावा, अगर आप प्रोजेक्ट एक्सप्लोरर फलक में कोई फ़ाइल हटाते हैं, तो फ़ाइल विंडोज रीसायकल बिन में नहीं मिल सकती है।

+0

लेकिन डिस्क फ़ोल्डर संरचना के चयन और प्रदर्शन के अलावा वर्कस्पेस/प्रोजेक्ट के लिए और भी कुछ होना चाहिए। क्या मै गलत हु? – Fredrik

+1

क्या यह सब एक वर्कस्पेस करता है? फ़ाइलों को व्यवस्थित करने का सिर्फ एक तरीका है? – AZhao

+0

आप किसी प्रोजेक्ट में मौजूदा फ़ाइलों को कैसे जोड़ते हैं और प्रोजेक्ट की "मुख्य" फ़ाइल के रूप में फ़ाइल को कैसे सेट करते हैं, ताकि जब भी आप प्रोजेक्ट की किसी भी फाइल पर चलते हैं तो यह मुख्य भाग चलाता है? – Antonello

3

स्पाइडर दस्तावेज़ीकरण से अनुपलब्ध होने वाली जानकारी का एक महत्वपूर्ण टुकड़ा यह है कि पहली जगह में एक नया वर्कस्पेस कैसे बनाया जाए। जब स्पाइडर इंस्टॉल करने के बाद कोई वर्कस्पेस मौजूद नहीं होता है, तो आपकी पहली परियोजना स्वचालित रूप से कार्यक्षेत्र के निर्माण को शुरू करती है (कम से कम एनाकोंडा 3 वितरण में)। हालांकि, यह स्पष्ट नहीं है कि वर्कस्पेस पहले से मौजूद होने पर नया वर्कस्पेस कैसे बनाया जाए।

(1) स्पाइडर में परियोजना अन्वेषक खिड़की का चयन करें:

यह केवल विधि मैं एक नया कार्यक्षेत्र बनाने के लिए मिल गया है है। यदि यह विंडो या टैब स्पाइडर एप्लिकेशन में कहीं भी दिखाई नहीं देता है, तो विंडो को सक्षम करने के लिए देखें> पैन> प्रोजेक्ट एक्सप्लोरर का उपयोग करें।

(2) परियोजना एक्सप्लोरर विंडो के ऊपरी-दाएं कोने में फ़ोल्डर आइकन पर क्लिक करें। यह आइकन एक संवाद लाता है जो एक नया वर्कस्पेस बना सकता है। संवाद .spyderworkspace फ़ाइल के लिए निर्देशिका का चयन करने की अनुमति देता है।

5

अक्टूबर 2016 अपडेट करें: स्पाइडर 3 में अब अन्य आईडीई (विशेष रूप से रुस्तुडियो) के समान परियोजना सुविधाएं हैं।

अब तुम अगर आप स्क्रिप्ट के साथ एक फ़ोल्डर है, तो आप

Projects > New Projects > Existing Directory 

को आयात करने के लिए जा सकते हैं। चयनित निर्देशिका परियोजना के लिए मूल निर्देशिका के रूप में सेट किया जाएगा।

+1

तो हमारे पास प्रोजेक्ट एक्सप्लोरर में कई परियोजनाएं नहीं हो सकती हैं? (पहले से ही गिटर में पूछा है) – Winand

+0

@Winand, नहीं, यह संभव नहीं है। आप एक समय में केवल एक परियोजना खोल सकते हैं। –

+1

@ करलोस कॉर्डोबा अब मैं वर्कस्पेस की बजाय एक बड़ी परियोजना का उपयोग करता हूं। पहले जैसा ही काम करता है। – Winand

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