इनमें से बहुत कुछ इस बात पर निर्भर करता है कि पाइथन सीखने के लिए आपका समग्र लक्ष्य क्या है। क्या आप इसे दूसरी भाषा सीखने या कंप्यूटर की बेहतर समझ और प्रोग्रामिंग भाषा का प्रभावी ढंग से उपयोग करने के तरीके के रूप में देख रहे हैं?
ऐसा लगता है कि आप कंप्यूटर के बारे में बेहतर समझ हासिल करना चाहते हैं और बेहतर प्रोग्रामर बनना चाहते हैं। पाइथन जैसी नई भाषाओं को सीखना शायद इस संबंध में आपकी मदद नहीं करेगा। यदि आप रुचि रखते हैं, तो भी मैं पाइथन सीखने की सलाह देता हूं, लेकिन एक बार जब आप एक प्रोग्रामिंग भाषा सीख चुके हैं, तो एक नई भाषा सीखने से सिंटैक्स और डेटा प्रकार (आमतौर पर) से परिचित हो रहा है।
आपने उल्लेख किया था कि आपने जो कक्षा ली है उसमें सामग्री को समझने के बारे में आपको अनिश्चितता थी। यदि आपको लगता है कि आप मौलिक अवधारणाओं (जैसे लूप, कक्षाएं, आदि) को समझ नहीं पाते हैं, तो पाइथन सीखना प्रोग्रामिंग की आपकी समझ में मदद करेगा क्योंकि अधिकांश पुस्तकें/मार्गदर्शिका इन अवधारणाओं पर फिर से विचार करती हैं (सीखना पायथन, तीसरा संस्करण इस में सहायता करनी चाहिए) । यदि आप इन अवधारणाओं को समझते हैं, लेकिन आप इन अवधारणाओं को लागू करने के बारे में अनिश्चित हैं, तो मेरी सिफारिश डेटा संरचनाओं और सामान्य एल्गोरिदम (जैसे सॉर्टिंग, खोज, आदि) के बारे में जानना होगा।
व्यक्तिगत अनुभव से बोलते हुए, मुझे नहीं पता था कि मैंने प्रारंभिक प्रोग्रामिंग कक्षा से व्यक्तिगत प्रोग्रामिंग परियोजनाओं में जो कुछ सीखा है उसे लागू करने के लिए। कक्षा से डेटा संरचनाओं के बारे में सीखने से उन अवधारणाओं को मजबूत करने में मदद मिली जो मैंने पहले इस ज्ञान के निर्माण वाले एल्गोरिदम/डेटा संरचनाओं को प्रदान करके सीखा था। इस वर्ग ने मुझे इन डेटा संरचनाओं का उपयोग करने के मामले में समस्याओं के बारे में अलग-अलग सोचने की अनुमति भी दी।
विभिन्न प्रकार के डेटा संरचनाओं के बारे में जानने के लिए, देखें: http://en.wikipedia.org/wiki/List_of_data_structures। आम तौर पर, प्रत्येक डेटा संरचना एक विशिष्ट उद्देश्य के लिए उपयोगी होती है (उदाहरण के लिए बाइनरी सर्च पेड़ क्रमबद्ध जानकारी खोजने के लिए अच्छे हैं)। दुर्भाग्यवश, मेरे पास कोई पुस्तक अनुशंसा नहीं है (हमारी कक्षा ने पुस्तक का उपयोग नहीं किया है)। गुगलिंग "डेटा स्ट्रक्चर" एक अच्छा प्रारंभिक बिंदु होना चाहिए।
डेटा संरचनाओं ने मुझे यह भी सोचा कि कार्यान्वयन कितना कुशल है। एल्गोरिदम की "जटिलता" निर्धारित करती है कि कोड का दिया गया टुकड़ा कितना समय लगता है। यह अन्य कार्यान्वयन की तुलना करना और यह निर्धारित करना आसान बनाता है कि कौन सा बेहतर है।
मैं यह भी टिप्पणी करना चाहूंगा कि जब कंप्यूटर अवधारणाओं को सीखने की बात आती है, तो सीखने का सबसे अच्छा तरीका है। एक पुस्तक/कक्षा केवल इतना ही समझा सकती है, और बाकी को आपको स्वयं ही सीखना है। प्रत्येक व्यक्ति अलग-अलग सीखता है, और प्रोग्रामिंग उस सामग्री को लेने का एक तरीका है जिसे आप पढ़ते हैं और इसके बारे में सोचते हैं जो आपके द्वारा सबसे अच्छी तरह से समझा जाता है।
मुझे उम्मीद है कि मैंने आपके प्रश्न का उत्तर दिया है। इस बिंदु पर, आपको अंतर्निहित हार्डवेयर के बारे में चिंता करने की ज़रूरत नहीं है।यह जानना उपयोगी है कि क्या आप इसे करियर (जो आप नहीं हैं) के रूप में करने की योजना बना रहे हैं, या आप जिस हार्डवेयर पर चल रहे हैं उसके लिए ऑप्टिमाइज़ेशन को विशिष्ट बनाना चाहते हैं (इस मामले में, आप पाइथन का उपयोग नहीं करना चाहते हैं) । पाइथन डेटा संरचनाओं के बारे में जानने के लिए एक अच्छी पसंद है क्योंकि यह आपके लिए बहुत से लागू करता है, लेकिन यह जानना महत्वपूर्ण है कि उनका क्या उपयोग किया जाता है।
यदि आप अभी भी स्कूल में हैं, तो डेटा संरचना वर्ग लें और देखें कि आप इसके बारे में क्या सोचते हैं। अगर आपको यह पसंद है, तो मैं आपके करियर में प्रोग्रामिंग/सीएस की भूमिका पर पुनर्विचार करने की सलाह दूंगा। आपको इसमें प्रमुख नहीं होना चाहिए, लेकिन एक नाबालिग या कम से कम एक ऐसी स्थिति पर विचार करें जो इन कौशलों का उपयोग करता है जो आप सीख रहे हैं। मैं यह इसलिए कहता हूं क्योंकि इसके बावजूद आपका प्रमुख नहीं होने के बावजूद, आप यह समझने में रुचि रखते हैं कि कंप्यूटर कैसे काम करता है और पाइथन सीखने, अपने कंप्यूटर का निर्माण करने और लिनक्स इंस्टॉल करने जैसी पहलों को लेता है।
यदि आपके कोई और प्रश्न हैं, तो बेझिझक पूछें। सौभाग्य!
मैं एसआईसीपी की सिफारिश को दृढ़ता से दूसरा करूंगा। आप इसके माध्यम से जाने के बाद _never_ वही होंगे। इसके साथ जोड़े जाने के लिए एसआईसीपी व्याख्यान http://groups.csail.mit.edu/mac/classes/6.001/abelson-sussman-lectures/ – baudtack
यदि आप कुछ पाठ्यक्रम सामग्री देखना चाहते हैं जो एक व्याख्यान प्रारूप में एसआईसीपी को कवर करते हैं, यहां मुफ्त यूसी बर्कले सीएस 61 ए व्याख्यान देखने का प्रयास करें: http://webcast.berkeley.edu/course_details.php?seriesid=1906978342 एक और एकमात्र ब्रायन हार्वे द्वारा पढ़ाया गया (जिसे आप जानते होंगे कि आपने * हैकर्स * पढ़ा है स्टीवन लेवी।) –