Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन में बाइट कोड फ़ाइल कैसे उत्पन्न करें

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

जब भी हम पहली बार एक मॉड्यूल आयात करते हैं या जब आपकी स्रोत फ़ाइल एक नई फ़ाइल होती है या हमारे पास एक अद्यतन फ़ाइल होती है तो हाल ही में संकलित फ़ाइल, फ़ाइल को उसी निर्देशिका में .py फ़ाइल के रूप में संकलित करने पर एक .pyc फ़ाइल बनाई जाएगी। (पायथन 3- से आप देख सकते हैं कि .pyc फ़ाइल __pycache__ नामक उपनिर्देशिका में है, इसके बजाय आपकी .py फ़ाइल के समान निर्देशिका में है)। यह एक समय बचाने वाला तंत्र है क्योंकि यह अगली बार अपना प्रोग्राम चलाने पर पायथन को संकलन चरण को छोड़ने से रोकता है।

यदि आप एक आयात (एक अन्य फ़ाइल) के साथ एक स्क्रिप्ट चला रहे हैं, तो कोई .pyc फ़ाइल नहीं बनाई जाएगी। उदाहरण के लिए, यदि आपके पास एक स्क्रिप्ट (file1.py) है जो दूसरी फ़ाइल (file2.py) आयात करती है।

PYC फ़ाइल बनाने का सबसे आसान तरीका इसे आयात करना है। मान लें कि आपके पास एक मॉड्यूल नाम MainP.py है। बस करो -

>>> import MainP
>>>

हालांकि, अगर आप एक मॉड्यूल के लिए एक .pyc फ़ाइल बनाना चाहते हैं जो आयात नहीं किया गया है, तो हमें py_compile नामक मॉड्यूल का सेट करना होगा और उस कार्य को करने के लिए सभी मॉड्यूल संकलित करना होगा।

py_compile मॉड्यूल किसी भी मॉड्यूल को मैन्युअल रूप से संकलित कर सकता है। हम py_compile का उपयोग करके अंतःक्रियात्मक रूप से py_compile मॉड्यूल भी बना सकते हैं। संकलन समारोह।

>>> import py_compile
>>> py_compile.compile('test.py')
'__pycache__\\test.cpython-36.pyc'
>>>

एक बार जब हम उपरोक्त कथन को पायथन शेल में चलाते हैं, तो हम देख सकते हैं कि __pycache__ फ़ोल्डर में एक .pyc फ़ाइल बनाई गई है (पायथन 3) अन्यथा आपकी test.py फ़ाइल के समान स्थान पर बनाई जाएगी।

पायथन में बाइट कोड फ़ाइल कैसे उत्पन्न करें

यदि आप एक समय में कई फाइलों को संकलित करना चाहते हैं, तो आप इस तरह py_compile.main() फ़ंक्शन का उपयोग कर सकते हैं -

>>> #Compiles several files at a time
>>> py_compile.main(['test1.py', 'test2.py', 'test_sample1.py', 'test_sample2.py'])
0

हम देख सकते हैं कि चार अलग-अलग संकलित फ़ाइलें उत्पन्न होती हैं -

पायथन में बाइट कोड फ़ाइल कैसे उत्पन्न करें

हालांकि, यदि आप किसी फ़ोल्डर के अंदर सभी फाइलों को संकलित करना चाहते हैं, तो आप Compileall.compile_dir() फ़ंक्शन का उपयोग कर सकते हैं।

>>> # Compile all the .py file from a particular folder.
>>> import compileall
>>> compileall.compile_dir('gmplot')
Listing 'gmplot'...
Listing 'gmplot\\.git'...
Listing 'gmplot\\.git\\hooks'...
Listing 'gmplot\\.git\\info'...
Listing 'gmplot\\.git\\logs'...
Listing 'gmplot\\.git\\logs\\refs'...
Listing 'gmplot\\.git\\logs\\refs\\heads'...
Listing 'gmplot\\.git\\logs\\refs\\remotes'...
Listing 'gmplot\\.git\\logs\\refs\\remotes\\origin'...
Listing 'gmplot\\.git\\objects'...
Listing 'gmplot\\.git\\objects\\info'...
Listing 'gmplot\\.git\\objects\\pack'...
Listing 'gmplot\\.git\\refs'...
Listing 'gmplot\\.git\\refs\\heads'...
Listing 'gmplot\\.git\\refs\\remotes'...
Listing 'gmplot\\.git\\refs\\remotes\\origin'...
Listing 'gmplot\\.git\\refs\\tags'...
Compiling 'gmplot\\__init__.py'...
Compiling 'gmplot\\color_dicts.py'...
Listing 'gmplot\\gmplot'...
Listing 'gmplot\\gmplot\\markers'...
Compiling 'gmplot\\gmplot.py'...
Compiling 'gmplot\\google_maps_templates.py'...
Compiling 'gmplot\\setup.py'...
Listing 'gmplot\\tests'...
True

अब हम देखते हैं कि .pyc फ़ाइल 'folder_name\__pycache__' स्थान के अंदर बनाई गई है।

पायथन में बाइट कोड फ़ाइल कैसे उत्पन्न करें

यदि आप किसी निर्देशिका या निर्देशिका के अंदर सभी फाइलों को संकलित करना चाहते हैं, तो आप इसे कंपाइल फ़ंक्शन के साथ कर सकते हैं।

C:\Users\rajesh>python -m compileall
Skipping current directory
Listing 'C:\\Python\\Python361\\python36.zip'...
Can't list 'C:\\Python\\Python361\\python36.zip'
Listing 'C:\\Python\\Python361\\DLLs'...
Listing 'C:\\Python\\Python361\\lib'...
Listing 'C:\\Python\\Python361'...
Compiling 'C:\\Python\\Python361\\BeautifulSoup_script1.py'...
Compiling 'C:\\Python\\Python361\\EDA_python1.py'...
Compiling 'C:\\Python\\Python361\\MainP.py'...
Compiling 'C:\\Python\\Python361\\NegativeAgeException.py'...
Compiling 'C:\\Python\\Python361\\NegativeNumberException.py'...
Compiling 'C:\\Python\\Python361\\OtherP.py'...
Compiling 'C:\\Python\\Python361\\__init__ Constructor.py'...
Compiling 'C:\\Python\\Python361\\attribute_access.py'...
…..
…
Compiling 'C:\\Python\\Python361\\variable_arguments_list.py'...
Compiling 'C:\\Python\\Python361\\variable_arguments_list1.py'...
Compiling 'C:\\Python\\Python361\\winquality1.py'...

और हम देख सकते हैं कि .pyc फ़ाइल एक __pycache__ निर्देशिका के अंदर सभी फ़ाइलों के लिए बनाई गई है।

पायथन में बाइट कोड फ़ाइल कैसे उत्पन्न करें


  1. पायथन में सीएसवी फ़ाइल कैसे पढ़ा जाए?

    एक सीएसवी फ़ाइल कॉमा सेपरेटेड वैल्यू फ़ाइल के लिए है। यह एक सादा पाठ फ़ाइल है जिसमें डेटा मान अल्पविराम द्वारा अलग किए जाते हैं और इसलिए अल्पविराम की सहायता से सादे पाठ के रूप में एक सारणीबद्ध डेटा का प्रतिनिधित्व करते हैं। CSV फ़ाइल में .csv एक्सटेंशन होता है। यहां देखें कि CSV फ़ाइलें कैसी दिखती

  1. pyqrcode मॉड्यूल का उपयोग करके पायथन क्यूआर कोड उत्पन्न करता है?

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

  1. Google कोलैबोरेटरी पर पायथन कोड कैसे चलाएं?

    Google Colaboratory एक मुफ़्त Jupyter नोटबुक वातावरण है जिसमें किसी सेटअप की आवश्यकता नहीं होती है और यह पूरी तरह से क्लाउड में चलता है। यह Google क्लाउड में होस्ट किया गया है और Google द्वारा अजगर कोडर्स के लाभ के लिए बनाए रखा गया है जो क्लाउड वातावरण का उपयोग करके पायथन स्क्रिप्ट को चलाना और परीक्