2014-06-15 9 views
42

मैं अजगर 3.4 सीखने शुरू कर दिया और पुस्तकालयों के साथ-साथ Google अनुप्रयोग इंजन का उपयोग शुरू करना चाहते हैं, लेकिन अजगर पुस्तकालयों के बहुमत केवल समर्थन अजगर 2.7 और साथ Google अनुप्रयोग इंजन ही।क्या Google ऐप इंजन पायथन 3 का समर्थन करता है?

क्या मुझे 2.7 सीखना चाहिए या क्या कोई आसान तरीका है? (क्या एक ही समय में मेरी मशीन पर 2 पायथन संस्करण होना संभव है?)

+6

वहाँ पायथन 2.x + और पायथन 3.x + के बीच काफी अंतर है, नहीं है तो आप पाइथन 2.x + सीख सकते हैं। आपके पास एक ही समय में मशीन पर पाइथन के एक से अधिक संस्करण हो सकते हैं, लेकिन इस समय ऐप इंजन के साथ पायथन 3 का उपयोग करने का एकमात्र तरीका "प्रबंधित वीएम" सुविधा का उपयोग करके है: https://developers.google.com/क्लाउड/प्रबंधित-वीएमएस –

+3

GAE Py3k समर्थन के लिए Google का आंतरिक मुद्दा: https://code.google.com/p/googleappengine/issues/detail?id=909 – ygbr

उत्तर

34

नहीं, ऐसा नहीं है।

Google App Engine(GAE)Python अनुप्रयोगों के लिए Python 2.7 क्रम सैंडबॉक्स उपयोग करता है। यह सामान्य ऐप इंजन होस्टिंग है। हालांकि, GAE में आप Managed VM Hosting का उपयोग कर सकते हैं।

प्रबंधित वीएम होस्टिंग आप विन्यास Google गणना इंजन वर्चुअल मशीनें पर GAE अनुप्रयोगों को चलाने की सुविधा देता है। आपको अधिक लचीलापन देना। अल्फा चरण में, इस समय प्रबंधित वीएम, केवल Java 7, Python 2.7 और Go 1.4 रनटाइम वातावरण का समर्थन करता है। अन्य रनटाइम प्राप्त करने के लिए (जैसे Python 3 या node.js) आप user-configurable custom runtime बना सकते हैं।

नोट:साथ प्रबंधित वीएम रों आप Python 2.7GAE पुस्तकालयों की क्षमताओं की जरूरत नहीं होगी।

  • आप का उपयोग कर GAE पर जोर देते हैं, के बाद से Python 3+ व्यवहार्य नहीं है, मैं 2.7 सीखने और 3+ संस्करणों का उपयोग करने जा जब GAE पुस्तकालयों Python 3+ वापस पोर्ट हो जाता है सुझाव है। यदि आप संस्करणों में से एक सीखते हैं तो आप आसानी से दूसरे पर स्विच कर सकते हैं।

  • आप Python 3+ के प्रयोग पर जोर देते हैं, तो आप Heroku या Microsoft Azure उपयोग कर सकते हैं। वे दोनों Python 2.7 और 3.4 का समर्थन करते हैं।

+8

** GAE अपडेट **: प्रबंधित वीएम होस्टिंग अब मूल रूप से समर्थन करता है पाइथन 3.4 बॉक्स से बाहर है और सार्वजनिक बीटा में है (अल्फा नहीं)। – eestrada

+2

हालांकि आप पायथन 3 के साथ किसी भी Google ऐप इंजन लाइब्रेरी का उपयोग नहीं कर सकते हैं। https://cloud.google.com/appengine/docs/flexible/python/migrating-an-existing-app – Jonathan

+2

हां, यह 10 अगस्त, 2016 से करता है। Google क्लाउड प्लेटफ़ॉर्म ब्लॉग की जांच करें https://cloudplatform.googleblog.com /2016/08/python-3-on-Google-App-Engine-flexible-environment-now-in-beta.html –

-1

मानक वातावरण में, तृतीय-पक्ष पुस्तकालयों को स्थापित करने के लिए विक्रेता आवश्यक था। लचीला वातावरण में इस कार्य की आवश्यकता नहीं है क्योंकि रनटाइम स्वचालित रूप से guarant.txt में घोषित निर्भरताओं को स्थापित करेगा, जिसमें मूल एक्सटेंशन की आवश्यकता वाले निर्भरताओं सहित।

https://cloud.google.com/appengine/docs/flexible/python/migrating-an-existing-app#behavioral_differences

22

Since August 10, 2016, it does.

आप Google App Engine बीटा वातावरण का उपयोग कर रहे हैं, तो आप अपने आवेदन app.yaml को संपादित करने और आवश्यक अजगर संस्करण निर्दिष्ट कर सकते हैं:

runtime: python 
# vm: true has been deprecated 
# check how env:flex may affect your billing 
env: flex 
entrypoint: gunicorn -b :$PORT main:app 

runtime_config: 
    python_version: 3 
+0

क्या आप अपनी अनुकूलित फ़ाइल के साथ डिफ़ॉल्ट फ़ाइल का उचित अंतर दिखा सकते हैं? –

+0

नवंबर 2016 तक, जीएई 3.5 का समर्थन नहीं करता है, सिर्फ 3.4। और 3.6 बस कोने के आसपास है। –

+1

[3.5.2 समर्थित है (दिसंबर 2016 को)] (https://cloud.google.com/appengine/docs/flexible/python/runtime) यह संस्करण उनके प्रतिनिधि में उबंटू 16.04 एलटीएस प्रबंधन है। – Rutrus

0

हाँ! Google ऐप इंजन पाइथन v3 का समर्थन करता है, आपको लचीली वातावरण स्थापित करने की आवश्यकता है।

मैं एप्लिकेशन इंजन पर अपने आवेदन को तैनात करने का मौका मिला और यह अजगर 3.6 क्रम उपयोग कर रहा है और सुचारू रूप से काम करता है ... :)

संबंधित मुद्दे