मुख्य सामग्री पर जाएं
होम पर वापस
ब्लॉग पर वापस
Tutorial

Android पर Python चलाएँ: ऑन-डिवाइस, ऑफ़लाइन, बिना किसी सेटअप के

हाँ, आप Android फ़ोन पर असली Python चला सकते हैं — पूरी standard library के साथ CPython 3.11, जो ऑन-डिवाइस और पूरी तरह ऑफ़लाइन चलता है। यह कैसे काम करता है, क्या कर सकता है, और इसकी सीमाएँ कहाँ हैं, यहाँ बताया गया है।

7 min
लेखक Pelayo Naredo
Android पर Python चलाएँ: ऑन-डिवाइस, ऑफ़लाइन, बिना किसी सेटअप के

"run Python on Android" खोजिए और ज़्यादातर जवाब आपको दो में से किसी एक रास्ते पर भेज देते हैं: एक पूरा टर्मिनल एनवायरनमेंट इंस्टॉल करके चीज़ें हाथ से कम्पाइल करना, या अपना कोड किसी वेबसाइट पर पेस्ट करना जो उसे किसी और के सर्वर पर चलाती है। पहला झंझट भरा है; दूसरा उसी पल काम करना बंद कर देता है जब आपका सिग्नल चला जाता है।

PocketCode एक तीसरा रास्ता अपनाता है: यह असली Python, सीधे आपके फ़ोन पर, बिना किसी कनेक्शन की ज़रूरत के चलाता है। कोई .py फ़ाइल खोलिए, Run पर टैप कीजिए, और CPython आपके हाथ में मौजूद डिवाइस पर ही चलता है। यह पोस्ट ठीक-ठीक समझाती है कि यह कैसे काम करता है, इससे आप क्या बना सकते हैं, और — उतनी ही अहमियत से — इसकी ईमानदार सीमाएँ कहाँ हैं।

असली CPython, डिवाइस पर ही चलता हुआ

यह कोई Python जैसा दिखने वाला इंटरप्रेटर या होस्ट किया हुआ sandbox नहीं है। PocketCode एक पूरा CPython 3.11 बंडल करता है और उसे ऑन-डिवाइस चलाता है: यह बिल्ड WebAssembly में कम्पाइल किया जाता है और ऐप के अंदर एक एम्बेडेड रनटाइम द्वारा चलाया जाता है। कोई रिमोट सर्वर यह काम नहीं करता, और कॉन्फ़िगर करने के लिए कुछ नहीं है — PocketCode इंस्टॉल कीजिए और Python बस वहाँ मौजूद है, ऑनलाइन हो या ऑफ़लाइन।

चूँकि execution स्थानीय है, इससे दो ऐसी बातें निकलती हैं जो फ़ोन पर मायने रखती हैं:

  • यह पूरी तरह ऑफ़लाइन काम करता है। हवाई जहाज़ में, मेट्रो में, सिग्नल-रहित सफ़र में — आपकी स्क्रिप्ट फिर भी चलती हैं, क्योंकि इंटरप्रेटर आपके डिवाइस में रहता है, किसी सर्वर पर नहीं।
  • आपका कोड आपके डिवाइस पर ही रहता है। चलाने के लिए कुछ भी किसी तीसरे-पक्ष के रनर पर अपलोड नहीं होता।

आप वास्तव में क्या चला सकते हैं

आपको पूरी CPython 3.11 standard library मिलती है — वही "batteries" जिनके लिए Python मशहूर है:

आप चाहते हैं…उपयोग करें
Parse and generate JSONjson
Match and transform textre
Do math and statsmath, statistics, random
Work with dates and timedatetime, time
Structure datacollections, dataclasses, itertools
Read and write filespathlib, csv, io

यहाँ एक स्क्रिप्ट है जो standard library के अलावा कुछ नहीं इस्तेमाल करती — यह जैसी है वैसे ही चलती है:

import json, statistics

scores = [88, 92, 79, 95, 88, 73]
summary = {
    "count": len(scores),
    "mean": round(statistics.mean(scores), 1),
    "median": statistics.median(scores),
    "max": max(scores),
}
print(json.dumps(summary, indent=2))

Run दबाएँ और कंसोल प्रिंट करता है:

{
  "count": 6,
  "mean": 85.8,
  "median": 88.0,
  "max": 95
}

यह स्क्रिप्टिंग, ऑटोमेशन, एल्गोरिदम अभ्यास, डेटा munging, और कोड सीखने के काम के अधिकांश हिस्से को कवर करता है। अगर आप इंटरव्यू की तैयारी कर रहे हैं, कोई Python कोर्स कर रहे हैं, किसी parser का प्रोटोटाइप बना रहे हैं, या चलते-फिरते कोई त्वरित transformation स्क्रिप्ट कर रहे हैं, तो यह वैसे-का-वैसा चलता है।

ईमानदार सीमाएँ

हम चाहते हैं कि आप उम्मीदें पहले से तय कर लें, न कि किसी दीवार से टकराएँ, तो यहाँ सीधी बात है:

  • pip, न बाहरी पैकेज। आप रनटाइम पर तीसरे-पक्ष की लाइब्रेरियाँ इंस्टॉल नहीं कर सकते। जो कुछ भी standard library में नहीं है — जिसमें NumPy या pandas जैसे C-extension पर आधारित पैकेज शामिल हैं — वह import नहीं होगा। यह एक स्क्रिप्टिंग और सीखने का एनवायरनमेंट है, कोई डेटा-साइंस स्टैक नहीं।
  • स्क्रिप्ट से इंटरनेट एक्सेस नहीं। इंटरप्रेटर एक WebAssembly सैंडबॉक्स में चलता है जिसमें नेटवर्किंग बंद है, इसलिए कोई स्क्रिप्ट सॉकेट नहीं खोल सकती या किसी URL को फ़ेच नहीं कर सकती (urllib/requests जैसी कॉल नेटवर्क तक नहीं पहुँचतीं)। यह आपके प्रोजेक्ट की फ़ाइलें पढ़ती-लिखती है और कंसोल पर प्रिंट करती है — पर बाहर नहीं जाती।
  • केवल standard-library Python। अगर किसी ट्यूटोरियल की पहली पंक्ति pip install ... है, तो वह हिस्सा यहाँ लागू नहीं होगा।
  • इंटरप्रेटर-गति, न कि नेटिव गति। ऑन-डिवाइस execution स्क्रिप्ट और अभ्यासों के लिए काफ़ी तेज़ है, लेकिन भारी number-crunching नेटिव ऑप्टिमाइज़ेशन वाले डेस्कटॉप CPython की तुलना में धीमा महसूस होगा।

इन सीमाओं के भीतर, यह बिना किसी शर्त के असली Python है।

वर्कफ़्लो: खोलिए, Run, आउटपुट पढ़िए

किसी स्क्रिप्ट को चलाना जानबूझकर उबाऊ है — और यही असल बात है:

  1. code editor में कोई .py फ़ाइल खोलिए या बनाइए।
  2. Run पर टैप कीजिए। PocketCode फ़ाइल को अपने ऑन-डिवाइस Python रनर पर भेज देता है।
  3. आउटपुट किसी भी दूसरी प्रोसेस की तरह ठीक वैसे ही console में स्ट्रीम होता है — print(), tracebacks, exit codes, सब कुछ।

आपको इसके इर्द-गिर्द एडिटर की पूरी टूलकिट भी मिलती है: LSP-आधारित autocomplete और inline diagnostics, ऑन-डिवाइस PEP-8 फ़ॉर्मैटिंग, एक प्रोग्रामिंग सिंबल बार ताकि : और [] ढूँढना कोई खोज-अभियान न बने, और multi-cursor एडिटिंग — सब कुछ फ़ोन पर।

दायरे के बारे में एक बात: Python एडिटर के Run बटन से चलता है। अगर आप बिल्ट-इन AI असिस्टेंट से किसी स्क्रिप्ट को execute करने को कहते हैं, तो वह रास्ता उसी ऑन-डिवाइस रनर से जोड़ा जा रहा है — आज कोड चलाने के लिए, एडिटर में Run का उपयोग कीजिए।

Python कई में से एक है

Python कोई अकेली चीज़ नहीं है। वही ऑन-डिवाइस execution मॉडल PocketCode में लगभग एक दर्जन भाषाओं को शक्ति देता है — तो जो फ़ोन आपकी Python स्क्रिप्ट चलाता है, वही एक असली बंडल किए हुए Node.js पर कोई JavaScript फ़ाइल, कोई Ruby वन-लाइनर, या एक ऑन-डिवाइस कम्पाइलर के साथ C को कम्पाइल और रन भी कर सकता है, वह भी बिना किसी सर्वर के बीच में आए। पाँच भाषाएँ इंस्टॉल करते ही तैयार होती हैं (Python, JavaScript, C, Ruby, PHP); बाकी वैकल्पिक पैक के रूप में आती हैं। हम पूरी सूची को एक समर्पित गाइड में कवर करते हैं — फ़िलहाल, इतना जान लीजिए कि "क्या यह मेरी भाषा चला सकता है?" का जवाब आमतौर पर हाँ होता है।

क्या Android पर Python चला सकते हैं? त्वरित जवाब

क्या आप Android पर Python चला सकते हैं? हाँ। PocketCode फ़ोन पर ही सीधे एक पूरा CPython 3.11 इंटरप्रेटर चलाता है — कोई .py फ़ाइल खोलें, Run पर टैप करें, और यह ऑन-डिवाइस चलता है, बिना किसी सर्वर के।

क्या Termux ज़रूरी है? नहीं। इंटरप्रेटर बिल्ट-इन है — इंस्टॉल या कम्पाइल करने के लिए कुछ नहीं। यह ऐप खोलते ही काम करता है।

क्या यह ऑफ़लाइन चलता है? हाँ, पूरी तरह। इंटरप्रेटर आपके डिवाइस पर ही रहता है, इसलिए स्क्रिप्ट बिना किसी कनेक्शन के चलती हैं।

क्या यह असली Python है? हाँ — पूरी standard library के साथ असली CPython 3.11, कोई नक़ल नहीं।

क्या आप pip / NumPy / pandas इस्तेमाल कर सकते हैं? नहीं। आपको पूरी standard library मिलती है, लेकिन न pip है और न C-extension पैकेज। यह एक स्क्रिप्टिंग और सीखने का माहौल है, कोई data-science स्टैक नहीं।

क्या कोई स्क्रिप्ट इंटरनेट तक पहुँच सकती है? नहीं — इंटरप्रेटर एक सैंडबॉक्स में चलता है जिसमें नेटवर्किंग बंद है।


आपकी जेब में मौजूद फ़ोन एक सचमुच सक्षम Python मशीन है — ऑफ़लाइन, निजी, और तत्काल। किसी न्यूरल नेट को ट्रेन करने के लिए नहीं, लेकिन भाषा सीखने, एल्गोरिदम का अभ्यास करने, और डेस्क से दूर रहते हुए असली काम की स्क्रिप्टिंग के लिए बिल्कुल।

PocketCode Google Play पर आ रहा है। अपने डिवाइस पर Python चलाने के लिए प्री-रजिस्ट्रेशन में शामिल हों

इस लेख के पीछे का टूल

कोड एडिटर

PocketCode आज़माने के लिए तैयार हैं?

ऐप डाउनलोड करें और अपने फ़ोन से कोडिंग शुरू करें।