एक भाषा आमतौर पर तीन परतों में बनाई जाती है।
जब आप किसी भाषा को प्रोग्राम प्रदान करते हैं तो इसे पहले प्रोग्राम को "पढ़ना" होता है। तो यह उस चीज़ को बनाता है जो उसने पढ़ा है जिसमें यह काम कर सकता है। और अंततः यह उस चीज़ को "एक कार्यक्रम" के रूप में चलाता है और (उम्मीद है) परिणाम प्रिंट करता है।
समस्या यह है कि पाइथन का पहला भाग - कार्यक्रम जो पढ़ता है - उलझन में है। यह उलझन में है, क्योंकि यह काफी चालाक
1.234
और
1.letters
क्या हो रहा जा करने के लिए उसके अनुसार आपकी 1.234
की तरह एक नंबर टाइप करने के लिए कोशिश कर रहे थे लेकिन एक गलती की है और है लगता है के बीच अंतर पता करने के लिए नहीं है इसके बजाय टाइप किए गए अक्षर (!)।
इसलिए 1
"वास्तव में है" के साथ इसका कोई लेना-देना नहीं है और यह एक वस्तु है या नहीं। उस तरह का तर्क दूसरे और तीसरे चरणों में होता है जो मैंने पहले वर्णित किया था, जब पाइथन निर्माण करने की कोशिश करता है और फिर प्रोग्राम चलाता है।
जो आपने खोला है वह केवल एक अजीब (लेकिन रोचक!) शिकन है जिसमें पाइथन प्रोग्राम पढ़ता है।
[मैं इसे एक बग कहूंगा, लेकिन शायद यह किसी कारण से ऐसा है। यह पता चला है कि कुछ चीजें कंप्यूटर पढ़ने के लिए कठिन हैं। पाइथन शायद डिज़ाइन किया गया है ताकि कंप्यूटर को प्रोग्राम पढ़ने के लिए यह आसान (तेज़) हो। इस "बग" को ठीक करने से संभवतः पाइथन का हिस्सा बन जाएगा जो प्रोग्राम को धीमा या अधिक जटिल पढ़ता है। तो यह शायद एक व्यापार बंद है।]
स्रोत
2012-08-03 20:00:54
यह एक वाक्यविन्यास त्रुटि है। संकलक वाक्यविन्यास को समझ में नहीं आता है। भाषा वाक्यविन्यास (इसका व्याकरण) परिभाषित नहीं किया गया है ताकि आप एक पूर्णांक के बाद एक विधि नाम टाइप कर सकें। कार्यक्रम चलने पर यह कोई त्रुटि नहीं है - यह प्रोग्राम से पहले * पहले * है। पार्सर समझ में नहीं आता कि आपने क्या लिखा है। –
@andrewcooke - मुझे लगता है कि सवाल (जिस तरह से खूबसूरती से प्रदर्शित) है * क्यों * पार्सर इसे संभाल नहीं सकता है? आप अन्य प्रकार के अक्षरों पर विशेषताओं/विधियों तक पहुंच सकते हैं (सामान्य '".join (...)' पर विचार करें, क्यों पूर्णांक नहीं? – mgilson
वास्तव में यह करता है, लेकिन मैंने सोचा कि सवाल पूछने वाले व्यक्ति की मुख्य चिंता थी कि किसी भी तरह इसका मतलब था कि पूर्णांक ऑब्जेक्ट नहीं थे (देखें http://stackoverflow.com/questions/11801549/python-data-types-are-classes-or-data- उसी उपयोगकर्ता से संरचनाएं)। इसलिए इस पर मेरा जोर कैसे है एक अलग, पहले परत से। –