अजगर साक्षात्कार प्रश्न [बंद]


25

मैं एक इंटर्नशिप के लिए दो सप्ताह के भीतर साक्षात्कार करने जा रहा हूं जिसमें पायथन प्रोग्रामिंग शामिल होगी।

क्या कोई सुझाव दे सकता है कि मुझे किन संभावित क्षेत्रों को चमकाना चाहिए? मैं पायथन ओपनिंग के लिए साक्षात्कार में आमतौर पर पूछे जाने वाले सामान की तलाश कर रहा हूं। इस तथ्य के अलावा कि मैं पहले से ही एक वर्ष से अधिक समय से भाषा का काम कर रहा हूं, मैं यह समझने में विफल हूं कि वे मुझसे क्या पूछ सकते हैं।

जैसे C या C ++ इंटरव्यू के लिए, स्ट्रिंग्स को उलटने से लेकर लिंक्ड लिस्ट बनाने से लेकर ढेर सारे सवाल होते हैं, लेकिन पायथन इंटरव्यू के लिए मैं क्लूलेस हूं।

व्यक्तिगत अनुभवों और / या सुझावों का स्वागत किया जाता है।


यदि यह एक इंटर्नशिप है, और आप पायथन में एक साल पहले से प्रोग्रामिंग कर रहे हैं, तो मुझे लगता है कि आप बिलकुल ठीक हो जाएंगे। था ने कहा, मुझे लगता है कि पायथन के लिए प्रश्नों की सामान्य प्रकृति वही होगी जो आपने c ++ के लिए बताई थी।
रॉबर्ट हार्वे

रॉबर्ट, बिना किसी पर्यवेक्षण और मार्गदर्शन के प्रोग्रामिंग करना मुझे परेशान करता है। शायद मुझे कुछ क्षेत्रों में कमी है।

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

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

जवाबों:


8

यहाँ कुछ आसान हैं:

  1. पायथन सज्जाकार क्या हैं और आप उनका उपयोग कैसे करेंगे?
  2. आप अपने पायथन कोड को कैसे डीबग करते हैं?
  3. आप कई परियोजनाओं को कैसे सेटअप करेंगे, जहां हर एक पायथन और तीसरे पक्ष के पुस्तकालयों के विभिन्न संस्करणों का उपयोग करता है?
  4. क्या आप अपना कोड लिखते समय PEP8 का अनुसरण करते हैं?

7

कैसे पायथन सूची समझ से जुड़े कुछ के बारे में ? मेरे बाद, वे C ++ से अधिक बड़े बिकने वाले बिंदुओं में से एक थे, जब मैंने उनके बारे में पाइथन में पाइव में पढ़ा ।

"एक सूची लिखें जो 1 से 10 (समावेशी) से सम संख्याओं की सूची बनाता है"।
जहां उत्तर कुछ भी हो, (ध्यान दें कि सीमा मान किसी फ़ॉस्पोस्ट त्रुटि से बचें):

foo = [x for x in range(1, 11) if (x % 2) == 0]
print foo
[2, 4, 6, 8, 10]

उस बात के लिए, यदि आप गोता में सूचीबद्ध सभी अवधारणाओं को पायथन में समझते हैं, जो कि अधिकांश महत्वपूर्ण विशेषताओं को कवर करना चाहिए।


13
यह अप्रामाणिक है। पायथन 2.x में, आप बस range(2,11,2)और पायथन 3.x में, करते हैं list(range(2,11,2))
चिन्मय कांची 28:10

@ साइकिल, लगता है जैसे आपको INNOTECH में अपनी नौकरी के लिए साक्षात्कार की आवश्यकता है।
नौकरी '

5
@ चिनमय कांची जबकि मुझे नहीं लगता कि यह एक अच्छा साक्षात्कार प्रश्न होगा, उन्नत सुविधाओं के लिए सबसे परिचय सबसे सरल चीजें हैं जो वे कर सकते हैं (जैसा कि पाठक को भ्रमित करने के लिए नहीं)। जबकि इस विशिष्ट समस्या के लिए एक अधिक सरल समाधान है, बिंदु इस विशिष्ट समस्या का उत्तर नहीं था। बिंदु एक सूची समझ का उपयोग करना था (जो पायथन में चीजों को अनुकूलित करने के लिए बहुत प्रभावी और एक उल्लेखनीय तरीका है)।
jsternberg

6

क्या पायथन संदर्भ से गुजरता है या मूल्य से गुजरता है, यह भी एक बहुत अच्छा सवाल है।


1
एक महान अनुवर्ती प्रश्न यह पूछना होगा कि वे इसे कैसे दिखा सकते हैं और यह क्यों मायने रखता है
एमकेटोन

@ इस्माइल - क्षमा करें, लेकिन यह एक अच्छा सवाल क्यों है?
थियोडोर

7
@Cervo: अगर मैं सही तरीके से समझूं, तो पायथन पास-बाय-वैल्यू है कि कैसे C #, Java, स्कीम, आदि पास-पास-वैल्यू हैं ... मैंने जो एकमात्र पास-बाय-रेफरेंस लैंग्वेज देखी है, वह VB6 है, जब तक सब कुछ पास-बाय-रेफरेंस न हो, जब तक कि अन्यथा निर्दिष्ट न हो। तथ्य यह है कि आप वस्तुओं को म्यूट कर सकते हैं यह किसी भी तरह से पास-बाय-रेफरेंस नहीं करता है, और तथ्य यह है कि आपके पास अपरिवर्तनीय वस्तुएं हो सकती हैं इसका मतलब यह नहीं है कि वे या तो मूल्य से पारित हो रहे हैं ... इसलिए " इस सवाल का जवाब न तो "है है पूरी तरह से गलत । मैं उस अभ्यर्थी के लिए बहुत खेद महसूस करता हूं जिसका साक्षात्कारकर्ता "न तो" होने का उत्तर मानता है ...
मेहरदाद

1
@Cervo: FYI करें, यहां तक ​​कि आपके लिंक में 100+ वोट किए गए उत्तर आपके तर्क को गिनते हैं: यह स्पष्ट रूप से कहता है कि "पैरामीटर मान द्वारा पारित किए जाते हैं।"
मेहरदाद

11
मेरा मानना ​​है कि सही उत्तर है: "पैरामीटर वे संदर्भ हैं जो मूल्य द्वारा पारित किए जाते हैं।"
user16764

6

मेरे द्वारा पूछे गए प्रश्न:

  • पायथन में मेटा-प्रोग्रामिंग के दो तरीकों का वर्णन करें।
  • GIL क्या है?
  • GIL क्यों महत्वपूर्ण है?
  • पाइथन का एक वैकल्पिक कार्यान्वयन अनलाडेन स्वॉलो क्यों कहा जाता है ?
  • Django, Pylons, या Zope? अपनी स्थिति का बचाव करें।

5

मुझे ऐसा कोई अनुभव नहीं है, लेकिन यहाँ कुछ अनुमान हैं:

  1. (आईएम) अस्थिरता
  2. प्रथम श्रेणी के कार्य / कक्षाएं
  3. बंद

यह कुछ सामान है जो अजगर प्रोग्रामर को पता होना चाहिए, अन्यथा आप स्थिति के लिए सी प्रोग्रामर को भी किराए पर ले सकते हैं।


3

मैं इस उत्तर में सूची के साथ जाऊंगा । उस सूची का अनुसरण करने के लिए जो आप जानते हैं उसे ताज़ा करने का प्रयास करें। चिंता मत करो अगर आप इसे बहुत अंत तक नहीं बना सकते हैं।


2

अन्य लिंक के अलावा लोगों ने प्रदान किया है। मैं पायथन की हिडन फीचर्स भी सुझाता हूं । बस के मामले में वे आप पर कुछ मुश्किल सवाल फेंक देते हैं।


2

आपकी समझदारी क्या है, क्या वे यह परखने की कोशिश करेंगे कि क्या आप पायथन को जानते हैं, देखें कि क्या आप पायथन में काम कर सकते हैं, या परीक्षण कर सकते हैं कि क्या आप (पायथन में) प्रोग्राम कर सकते हैं?

वे बहुत अलग चीजें हैं।

यदि वे चाहते हैं कि आप यह दिखाएं कि आप पायथन को जानते हैं, तो वे आपको जनरेटर बनाने जैसी चीजें करने के लिए मजबूर कर सकते हैं, फिर इसका उपयोग किए बिना करें yield। बताएं कि कक्षाएं कैसे काम करती हैं। C3 विधि संकल्प क्रम बताएं। और इसी तरह।

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

यदि वे चाहते हैं कि आप यह दिखा सकें कि आप (पायथन में) प्रोग्राम कर सकते हैं, तो आपको बुनियादी डेटा संरचनाओं को जानना होगा, और अपने एल्गोरिदम को जानना होगा। यह आपके द्वारा पूछे जाने वाले C / C ++ प्रश्नों के बहुत करीब है, सिवाय इसके कि आपसे देशी डेटा संरचनाओं का उपयोग करने की अपेक्षा की जाएगी जहां यह आपके जीवन को आसान बनाता है।

सुरक्षित रहने के लिए आपको तीनों के लिए कुछ हद तक तैयारी करनी चाहिए। उदाहरण के लिए http://docs.python.org/tutorial/ के माध्यम से पढ़ें और कुछ नोट्स खुद बनाएं। उम्मीद है कि आप पहले से ही जानते हैं कि कैसे प्रोग्राम करना है। और फिर कुछ यादृच्छिक कार्यों का प्रयास करें, और अपने आप को पुस्तकालयों का उपयोग करने के लिए मजबूर करें जिन्हें आपने याद किया होगा। इसलिए, उदाहरण के लिए, कुछ CSV पढ़ें, वेब पेज से प्रोग्रामेटिक रूप से जानकारी निकालें, एक फ्रेमवर्क के साथ एक छोटी वेबसाइट बनाएं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.