कोड ऑब्जेक्ट CPython कार्यान्वयन का एक निम्न-स्तरीय विवरण है। प्रत्येक एक निष्पादन योग्य कोड के एक हिस्से का प्रतिनिधित्व करता है जो अभी तक किसी फ़ंक्शन में बाध्य नहीं हुआ है। हालांकि कोड ऑब्जेक्ट निष्पादन योग्य कोड के कुछ टुकड़े का प्रतिनिधित्व करते हैं, वे स्वयं, सीधे कॉल करने योग्य नहीं हैं। किसी कोड ऑब्जेक्ट को निष्पादित करने के लिए, आपको एक्ज़ीक्यूटिव कीवर्ड का उपयोग करना चाहिए।
नीचे दिए गए उदाहरण में हम देखते हैं कि किसी दिए गए कोड के लिए कोड ऑब्जेक्ट कैसे बनाए जाते हैं और हैट कोड ऑब्जेक्ट से जुड़े विभिन्न गुण क्या हैं।
उदाहरण
code_str = """ print("Hello Code Objects") """ # Create the code object code_obj = compile(code_str, '<string>', 'exec') # get the code object print(code_obj) #Attributes of code object print(dir(code_obj)) # The filename print(code_obj.co_filename) # The first chunk of raw bytecode print(code_obj.co_code) #The variable Names print(code_obj.co_varnames)
आउटपुट
उपरोक्त कोड को चलाने से हमें निम्नलिखित परिणाम मिलते हैं -
<code object <module> at 0x000001D80557EF50, file "<string>", line 2> ['__class__', '__delattr__', '__dir__', '__doc__', ……., '__subclasshook__', 'co_argcount', 'co_cellvars', 'co_code', 'co_consts', 'co_filename', 'co_firstlineno', …..,posonlyargcount', 'co_stacksize', 'co_varnames', 'replace'] <string> b'e\x00d\x00\x83\x01\x01\x00d\x01S\x00' ()