2014-06-15 3 views
42

zacząłem uczyć Python 3.4 i chciałby rozpocząć korzystanie z bibliotek, a także Google App Engine, ale większość Python bibliotek obsługują tylko Python 2.7 i to samo z Google App Engine.Czy Google App Engine obsługuje Python 3?

Czy powinienem się nauczyć 2.7 zamiast tego czy jest łatwiejszy sposób? (Czy w tym samym czasie można mieć dwie wersje Pythona?)

+6

Nie ma dużej różnicy między Pythona 2.x + i Python 3.x +, więc równie dobrze możesz nauczyć się Python 2.x +. Możesz mieć więcej niż jedną wersję Pythona na komputerze w tym samym czasie, ale jedynym sposobem użycia Pythona 3 z App Engine w tym momencie jest użycie funkcji "Zarządzane maszyny wirtualne": https://developers.google.com/cloud/managed-vms –

+3

Wewnętrzny problem Google'a dla obsługi GAE Py3k: https://code.google.com/p/googleappengine/issues/detail?id=909 – ygbr

Odpowiedz

34

Nie, nie ma.

Google App Engine(GAE) zastosowania piaskownicy Python 2.7 czas pracy Python zastosowań. To jest normalny App Engine Hosting. Jednak w GAE można użyć Managed VM Hosting.

Managed Hosting VM umożliwia uruchamianie aplikacji na GAE konfigurowalnych Google Compute Engine maszyn wirtualnych. Daje ci większą elastyczność. Zarządzane maszyny wirtualne w tej chwili, w fazie alfa, obsługują tylko środowiska wykonawcze Java 7, Python 2.7 i Go 1.4. Aby uzyskać inne środowiska wykonawcze (na przykład Python 3 lub node.js), można utworzyć user-configurable custom runtime.

Uwaga: Z Managed VM s nie będzie miał możliwości Python 2.7GAE bibliotek.

  • Jeśli nalegać na użyciu GAE, ponieważ Python 3+ nie jest opłacalne, chciałbym zaproponować naukę 2,7 i przełączenie do 3+ wersjach kiedy GAE biblioteki zostanie przeniesiona do Python 3+. Możesz łatwo przejść do drugiego, jeśli nauczysz się jednej z wersji.

  • Jeśli nalegać na użyciu Python 3+, można użyć Heroku lub Microsoft Azure. Oba z nich obsługuje Python 2.7 i 3.4.

+8

** Aktualizacja GAE **: zarządzane hostowanie maszyn wirtualnych obsługuje teraz Python 3.4 po wyjęciu z pudełka i jest w publicznej wersji beta (nie alpha). – eestrada

+2

Chociaż nie można (jeszcze) korzystać z żadnej z bibliotek wyszukiwarki aplikacji Google pod adresem python3. https://cloud.google.com/appengine/docs/flexible/python/migrating-an-existing-app – Jonathan

+2

Tak, dzieje się to od 10 sierpnia 2016 r. Sprawdź blog Google Cloud Platform https://cloudplatform.googleblog.com /2016/08/python-3-on-Google-App-Engine-flexible-environment-now-in-beta.html –

22

Since August 10, 2016, it does.

Jeśli używasz Google App Engine beta środowiska, można edytować aplikacji app.yaml i określ wymaganą wersję Pythona:

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

Czy możesz pokazać właściwą różnicę domyślnego pliku przy pomocy spersonalizowanego pliku? –

+0

Od listopada 2016 r. GAE nie obsługuje 3,5, tylko 3,4. A 3.6 jest tuż za rogiem. –

+1

[3.5.2 jest obsługiwane (w grudniu 2016 r.)] (Https://cloud.google.com/appengine/docs/flexible/python/runtime) jest to wersja Ubuntu 16.04LTS zarządzana w repozytoriach. – Rutrus

0

TAK! Silnik aplikacji Google obsługuje pythona v3, musisz skonfigurować elastyczne środowiska.

mam szansę wdrożyć mojej aplikacji na app silnika i to przy użyciu python 3.6 czas pracy i działa płynnie ... :)