Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Python (https://www.clubdelphi.com/foros/forumdisplay.php?f=46)
-   -   Empezar con Python (https://www.clubdelphi.com/foros/showthread.php?t=73158)

D-MO 04-04-2011 20:51:32

Empezar con Python
 
Python es un lenguaje interpretado, multiplataforma, con una sintaxis limpia y es Open Source.

Actualmente hay dos ramas estables de Python, de la 2.x está en este momento 2.7.1 y de la 3.x está la 3.2. Para mas informacion sobre que rama elegir, leer acá.

Mi recomendación es trabajar con la rama 2.x puesto que, a pesar de las muchas mejoras que puede traer la rama 3.x, tenemos la limitante de que no todo lo que funciona en 2.x funcionará igual la 3.x. Así que de momento, sigamos con la rama 2.x.

Para aquellos que quieran empezar con este lenguaje y aún no han instalado el interprete, acá les dejo las instrucciones para su instalación.

Unix/Linux (Y todos sus descendientes)
En la mayoría de distribuciones Unix/Linux vamos a encontrar que python ya está instalado desde el momento en que instalamos el SO. Para empezar a estudiarlo, bastaría con esto.

Si queremos ver que versión tenemos instalada ejecutar en la consola (terminal, linea de comandos, la caja negra):

Código:

python -V
y nos dará algo como esto:
Código:

Python 2.6.6
Esta es la versión que tengo instalada en mi debian Squeeze, instalada cuando instalé el SO y con las actualizaciones vía apt.

Como comento arriba, para la mayoría de los casos bastará con esto. Sin embargo, si queremos instalar una versión mas reciente (mas reciente que la que nos provee nuestro gestor de paquetes) bastaría con descargar los fuentes, compilar e instalar. Acá los pasos:

Descargar los fuentes de la última versión estable (2.7.1 en este momento) desde http://www.python.org/download/

Descomprimir y desde la consola ingresar al directorio donde descomprimimos.

Código:

$ ./configure
$ make
$ sudo make install

Y con esto bastaría para compilar e instalar Python en el sistema. Si por el contrario, lo que quieres es instalar python dentro de tu usuario unicamente (sin que afecte a todo el sistema) se debería omitir lo anterior por lo siguiente:

Código:

$ ./configure --prefix=/home/<username>/apps
$ make
$ make install

Indicando así que se instala en el directorio apps dentro de nuestro directorio de usuario. Ahora basta con que ejecutemos ~/apps/bin/python -V para asegurarnos que está instalado y ver la versión.

Windows
Con windows la historia es otra, como es de esperarse, Python no viene preinstalado. La instalación en windows se lleva a cabo de la siguiente manera:

Descargar el instalador desde http://www.python.org/download/

Ejecutar el instalador y seguir con los pasos del asistente

Agregar la ruta de instalación a las variables de entorno. Si no cambiamos la ruta de instalación, debería haberse instalado en C:\\Python27, entonces, debemos agregar "C:\Python27" al PATH del sistema.

Ahora basta con que abramos una consola (linea de comandos, cmd, o como quieran llamarla) y escribamos:
Código:

python -V
Y para los que usan Mac
Al igual que Unix/Linux y siendo descendiente de Unix, python viene "de fábrica", así que no habría ningún problema, sin embargo, si quieren tener una versión mas reciente podrían seguir los pasos que menciono arriba o bién si existe una mejor manera porfavor indicarla pues soy un completo ignorante en lo que a este SO se refiere.

Ahora que ya tenemos instalado Python, lo mejor es leer el tutorial que está en la propia web de Python.

Espero que esto le sirva a alguien.

Saludos.

rretamar 04-04-2011 21:26:12

Hay algo que los que tengan experiencia pueden explicar mucho mejor que lo que yo lo haría:

¿ Que puedo hacer con Python ? ¿ Qué tipo de aplicaciones puedo hacer ? ¿ Es veloz ? ¿ Existen buenos IDEs ? ¿ Tiene sentido usar un IDE ? Teniendo en cuenta que aquí conocemos y usamos Object Pascal...¿ cuáles serían los nichos que cubre Python y que Delphi / Lazarus / Free Pascal es menos adecuado ?

Esas son las razones que pueden llevar a alguien a ponerse a aprenderlo, o bien a descartarlo.

D-MO 04-04-2011 22:57:22

Cita:

Empezado por rretamar (Mensaje 395783)
Hay algo que los que tengan experiencia pueden explicar mucho mejor que lo que yo lo haría:

No me considero alguien con mucha experiencia en el lenguaje, tan solo soy alguien que se ha enamorado del lenguaje por lo que he probado. Que sin ser mucho, me ha demostrado bastante. Respondo a este post no como un experto, sino como alguien que lo usa.

Cita:

Empezado por rretamar (Mensaje 395783)
¿ Que puedo hacer con Python ? ¿ Qué tipo de aplicaciones puedo hacer ?

Como con cualquier lenguaje de programación, te permite hacer muchas cosas, algunas de mejor o peor manera, pero puedes hacerlas.

Cita:

Empezado por rretamar (Mensaje 395783)
¿ Es veloz ?

Si, y mucho. Tomando en cuenta que es un lenguaje interpretado, a mi me parece muy rápido. Nada que ver con Java, por ejemplo.

Cita:

Empezado por rretamar (Mensaje 395783)
¿ Existen buenos IDEs ? ¿ Tiene sentido usar un IDE ?

IDEs, bueno, dependiendo de para que lo vayas a usar. Al ser un lenguaje mas flexible es muy difícil diseñar un IDE que cumpla con todos los escenarios, entonces, lo que si hay es entornos de desarrollo que te gestionen proyectos, bibliotecas, te brinden autocompletado, refactoring, etc...;

Yo empecé usando solamente gedit, con la intención de forzar mi aprendizaje. Al final me gustó y me quedé con el, recién apenas hace unas semanas empecé a probar Pydev, un plugin para eclipse que me está gustando bastante, aunque siempre he detestado eclipse.

A raiz de la recomendación de mamcx, ayer descargué PyCharm y estoy dandole una probadita, ya en unos días, cuando lo haya podido examinar a fondo podré dar comentarios al respecto.

Cita:

Empezado por rretamar (Mensaje 395783)
Teniendo en cuenta que aquí conocemos y usamos Object Pascal...¿ cuáles serían los nichos que cubre Python y que Delphi / Lazarus / Free Pascal es menos adecuado ?

Aquí se me hace muy difícil responder puesto que realmente con Object Pascal no trabajé mucho, tan solo lo estudié algún tiempo y luego empecé a trabajar para la web, que es donde estoy ahora con Python + Django. Sin embargo, quizá la razón de aprenderlo no sea para dejar a un lado Object Pascal, sino para complementarlo.

maeyanes 04-04-2011 23:06:24

Hola...

Mi gran duda existencial sobre Django es como publicar una aplicación o sitio web desarrollado en Django, usando hostings compartidos (los famosos Apache, MySQL) o si existe algún proveedor de hostings que soporte Django de paquete.



Saludos...

Chris 04-04-2011 23:12:05

Cita:

Empezado por rretamar (Mensaje 395783)
Esas son las razones que pueden llevar a alguien a ponerse a aprenderlo, o bien a descartarlo.

En realidad serían tus razones amigo, no generalices. Cada desarrollador tiene sus propias razones para elegir o descartar X lenguaje. Lo principal es sentirte dichoso de poder hacer una elección, ya que aveces puede no ser el caso...

Y sobre lo que puedes hacer y no hacer con Python o la familia Object Pascal, creo que depende de cómo las quieras ver. Pero sus diferencias nacen desde que uno es Script y el otro es compilado. Eso puede decirte muchas cosas. Además creo que a cómo están hoy las cosas, con Python + Django puedes hacer aplicaciones Web. Cosa que no hay forma decente de hacerlas con Object Pascal.

D-MO 04-04-2011 23:18:18

Cita:

Empezado por maeyanes (Mensaje 395812)
Hola...

Mi gran duda existencial sobre Django es como publicar una aplicación o sitio web desarrollado en Django, usando hostings compartidos (los famosos Apache, MySQL) o si existe algún proveedor de hostings que soporte Django de paquete.

Django puede correr sobre fastcgi, es todo lo que necesita integrado en el servidor web. En el hilo que dió vida a este foro escribí el cómo hice para instalar Django en una cuenta compartida de hospedaje. Aunque no es la mejor forma de hacerlo, funciona... y bastante bién.

Saludos.

maeyanes 04-04-2011 23:53:25

Hola...

Cita:

Empezado por D-MO (Mensaje 395815)
Django puede correr sobre fastcgi, es todo lo que necesita integrado en el servidor web. En el hilo que dió vida a este foro escribí el cómo hice para instalar Django en una cuenta compartida de hospedaje. Aunque no es la mejor forma de hacerlo, funciona... y bastante bién.

Saludos.

Ya leí tu mensaje en el otro hilo. Creo que vendría muy bien un hilo detallando mejor paso a paso como hacer esta instalación, por que lo intenté en un hosting que tengo contratado y nada más no pude, solo por el hecho de no poder contar con el acceso ssh.


Saludos...

D-MO 04-04-2011 23:59:37

Cita:

Empezado por maeyanes (Mensaje 395820)
Hola...



Ya leí tu mensaje en el otro hilo. Creo que vendría muy bien un hilo detallando mejor paso a paso como hacer esta instalación, por que lo intenté en un hosting que tengo contratado y nada más no pude, solo por el hecho de no poder contar con el acceso ssh.


Saludos...

Pues precisamente es uno de los posts que planea detallar en este foro, el tiempo es el problema :o... pero ya vendrá.

Mientras te recomiendo que lo hagas en local y ya funcionando lo subas a tu cuenta y configures el fastcgi para que ejecute Django desde tu instalación de Python (la que has cargado).

Saludos.

mamcx 05-04-2011 04:52:17

La documentación de django es muy buena:

http://docs.djangoproject.com/en/1.3/topics/install/

Y sobre hosting:

http://code.djangoproject.com/wiki/ServerArrangements

La info en español:

http://django.es/

----


Sin embargo creo que es bueno separar python de django. Es mejor aprender el lenguaje de base y luego mirar un framework...

mamcx 05-04-2011 05:01:46

Cita:

Empezado por rretamar (Mensaje 395783)
¿ Que puedo hacer con Python ? ¿ Qué tipo de aplicaciones puedo hacer ? ¿ Es veloz ? ¿ Existen buenos IDEs ? ¿ Tiene sentido usar un IDE ? Teniendo en cuenta que aquí conocemos y usamos Object Pascal...¿ cuáles serían los nichos que cubre Python y que Delphi / Lazarus / Free Pascal es menos adecuado ?

1 & 2- Puedes darle una ojeada en http://en.wikipedia.org/wiki/List_of_Python_software

3- Si... pero no al grado de un lenguaje compilado. Para efectos practicos, la mayoria de las apps no seran mas o menos rapidas por causa del lenguaje...

4- IDEs si hay varios. Si te parece o no, es cosa de que pruebes. A unos les gusta mas un editor de texto potente (como Texmate). Yo uso ambas cosas dependiendo de..

5- La pregunta es para que Delphi es mas adecuado. En terminos simplistas, es mejor cuando se trata de hacer GUIs usando las librerias nativas del OS, e integracion profunda con este.

Los lenguajes de scripting se prestan mas para tareas simples o de una sola ves, sitios web, logica no visual, etc. Interfaces graficas? Ese es el domino de lenguajes nativos (C++, Delphi, Objective-C)

En mi caso, uso python para darle funcionalidad de plugins a la aplicacion de BestSeller & delphi para crear un servidor web embedido con RemObjects.

El combo host nativo + scripting es una opcion popular. Permite tener el desempeño de las librerias nativas (sin usar un puente de minimo comun denominador como Java) y la flexibilidad del scripting.


La franja horaria es GMT +2. Ahora son las 11:42:15.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi