Python v2 ó v3

Bueno, al fin me he decidido a cacharrear con el python y claro, ¿apuesto por el burradón de software que hay para la v2 o me meto directamente en lo que vendrá y tiro directamente hacia la v3?, ¿vosotr@s que habeis hecho/haríais/pensais hacer?.

Y para darle un toque más, con los gráficos ¿tiro con gtk o qt?, me interesa sobre todo la simplicidad y la evolución de cliente pesado a web.
Yo uso Python2 y para interfaces, PyQt. Me gusta más su enfoque OO que Gtk (Aunque también está Tk)
La diferencia esta mayormente en el nombre de los módulos. Para aplicaciones gráficas hay bastantes herramientas, por defecto esta tkinter. Creo recordar que qt tiene una interfaz visual tipo visual basic.
Salvo que quieras conocer lo antiguo por "motivos historicos", apunta a Python 3. Empezar hoy en dia con Python 2 tiene poco sentido, salvo que explicitamente tengas que utilizar bibliotecas que no han sido portadas a py3, o lo dicho, "motivos historicos".

Sobre el framework, Qt sin dudarlo.
JanKusanagi escribió:Salvo que quieras conocer lo antiguo por "motivos historicos", apunta a Python 3. Empezar hoy en dia con Python 2 tiene poco sentido, salvo que explicitamente tengas que utilizar bibliotecas que no han sido portadas a py3, o lo dicho, "motivos historicos".

Sobre el framework, Qt sin dudarlo.


Mmm, esto me parece lo más interesante (sin desmerecer a los demás, of course).

¿Sabes si Qt WebKit me puede dar problemas con navegadores que no vayan nativamente con WebKit o la adaptación es sencilla?.
Qt WebKit, es para usar webkit como render html dentro de aplicaciones Qt. No para hacer paginas.

Si buscas algun framework para realizar app web escrito en python, te recomiendo Flask.
Bueh, si vas a empezar desde cero, yo personalmente cogería el V2 solo por la gran cantidad de guías y tutoriales, amén de que gran cantidad de las dudas que te surjan ya estarán resueltas, y cuando quieras dar el salto al V3 solo tendrás que cambiar algunas palabras y alguna que otra función nueva que deberás poner de por medio.
@nu_kru que ventajas tiene Flask respecto a web2py ?

P4j4r0 N3gr0 escribió:¿vosotr@s que habeis hecho/haríais/pensais hacer?.


Yo ahora intento hacer código que funcione en las 2 versiones de python:

http://python-future.org/compatible_idioms.html

Algunas cosas que hago puedo elegir en cual de los 2 ejecuto, en función del rendimiento del interprete en la plataforma por ejemplo, en sistemas embebidos python2 suele ir mas rápido.

Y otras veces no tienes elección, si quieres usar socketCAN necesitas python 3.3+, y si quieres usar pymodbus necesitas 2.7-, por poner un par de ejemplos.

Para GUIs Qt5, salvo que quieras hacer apps tactiles para Android e iOS, en cuyo caso Kivy esta tomando mucha fuerza.
¿ A que te refieres con "cliente pesado a web" ?

La única pega es que tengo mucho código antiguo que lo hice pensando sólo en V2, si lo hubiese pensado antes ...
@cercata No he usado web2py, asi que no sabría decirte, pero me da que web2py quiere competir mas con django que flask, sobre todo al nivel de funcionalidades que trae por defecto, lo cual no se si te "ata" como con django

Vamos flask por defecto no trae practicamente nada, como bien dice es un microframework, trae poco mas que jinja como motor de templates (el cual puedes cambiar), su sistema de rutas. y su debugger. Todo lo demás te lo vas montando como quieras.

Pero vamos hay muchisimas extensiones, alguna de ellas básicas como sqlalchemy (el cual prefiero al orm de django, el cual como no tambien puedes usar si quieres) o wtforms (incluso puedes generar el formulario a través de la propiedades declaradas en el orm, vamos que si buscas un poco puedes tener mucha de la funcionalidad que trae por defecto django)

El mayor problema es que tal vez dependes excesivamente de las extensiones de terceros, que se podría dar el caso que no estuviesen actualizadas (ejemplo cuando dieron soporte completo a python 3)
nu_kru escribió:Qt WebKit, es para usar webkit como render html dentro de aplicaciones Qt. No para hacer paginas.

Si buscas algun framework para realizar app web escrito en python, te recomiendo Flask.


Bottle es otra gran alternativa, mas rápido que flask y sin que te obligue a llevar su sistema de templates :P perfecto para api rest
9 respuestas