Aprender a Programar: Python

Nucklear

Vengo por aquí para dejar un par de recursos interesantes.

En primer lugar una guía que encontré en hackxcrack para que los que están empezando tengan una buena guía donde apoyarse. Le eché un vistazo por encima y parece muy completa y bien explicada para las cosas básicas.

http://www.hackxcrack.es/cuadernos/python/Hack_x_Crack_de0aPython.pdf

Y aquí dejo otra serie de tutoriales que se presentaron en la PyCon 2013, que tocan de todo un poco orientándolo hacia la web, manejo de APIs, datos, scrapers, etc...

http://newcoder.io/tutorials/

2 1 respuesta
Ronso

Pues me he apuntando al de phyton de Udacity, lo toqué hace 2 años y la verdad me gusto su forma intuitiva (aunque creo, por novato que soy, que cuando tienes muchas lineas de código tiene que ser un caos).

Un saludete!

1 mes después
Ronso

Bueno, esto esta muertens xD. A ver voy a poner aquí varias dudas que me han surgido (estoy haciendo otro curso e Python que estan dando la versión 3.3.X) gracias a #61 me resolvió la duda de raw_input() e input() según las versiones.

Ahora tengo una dudilla, y es que cuando pongo "+" para concatenar cadenas me dice que no, que al ser un entero tengo que poner "," alguien puede explicar un poco esto? Gracias

Este es el código y con "+" no me funca t_t

edad = int(input("Dime tu edad "))
print ("Tienes " ,edad, " años")
print ("El doble de tu edad es " ,(edad*2))
1 respuesta
D

Como estudiante (por cuenta propia) de C, digo claramente que Python es el hermano gay de C.

3 respuestas
Nucklear

#63 No puedes concatenar un entero a un string, para hacer eso tiene es que convertir primero el int a un string antes o usar sustitución de cadenas.

Si no me equivoco y funciona en la v.3 puedes hacer esto:

print 'Tu edad es %s', edad

%s hace una llamada a str() para convertir edad a string. A eso se refiere con usar las comas.

#64 Un comentario totalmente constructivo y meditado, si señor.

#66 Eso también vale, aunque si está aprendiendo creo que es mejor que se acostumbre a cuidar de los tipos que está usando.

2
sPNkKkKkKkKk

print "El doble de tu edad es: ", edad * 2

Eso funciona por lo menos a mi en la versión 2.x

#64 Tell us more, we're eager to know your next intelligent comment.

1 1 respuesta
B

Alguno ha tirado a por Python para web? Si es así, que tal?

Estoy comenzando en Python y por ahora perfecto, a comparación de php se escribe solo :D

¿Algún sitio aparte de #1 para aprender? Thx

1 respuesta
DantePD

#67 Te parecen pocos los de #1 ? xD

Mi recomendacion es aprender la base con Codecademy y luego hacer el de Udacity con el que aprendes a hacer un buscador desde 0.

1 1 respuesta
B

#68 Gracias.

De Codeacademy llevo un par de temas y hasta ahora perfecto. Por cierto, mira que hay en la misma web -> http://www.codecademy.com/en/glossary/python

lxn_

¿Para qué se usa mayoritariamente Python? Estoy entre este y Ruby.

2 respuestas
D

#70 Para hacer como que sabes, se hacen mierdas de scripts que podrías hacer con C, pero van más lentos y son más fáciles de hacer, básicamente.

#72 No se puede luchar contra la realidad. Es matemático.

3 respuestas
Ronso

#71 No te quería responder a lo de #64 pero es que madre mía, las que tiras son una detrás de otra eh?

1 respuesta
DantePD

#71 Ya nos ha quedado clara tu opinion. C mola y Python es una mierda. Ya esta, porfavor no sigas intentando convertir esto en un Python vs C. Entendemos que C es matematicamente mejor, pero no podemos aprender todos el mismo idioma. Para eso hay cientos de idiomas y frameworks.

#70 El eterno dilema de Python + Django o Ruby + Rails. Yo tambien he tenido que decidir entre uno y otro. Elegi Python simplemente porque hay mas material para aprender desde 0. Pero los dos son muy buenos. Rails tiene una comunidad mas grande.

Para Ruby on Rails hay un curso en español muy bueno en Udemy.

1
Nucklear

#71 Que fácil es hablar desde la ignorancia. En primer lugar python es para lo que es y hoy en día salvo para sistemas embebidos los lenguajes interpretados son mas que suficientes para lo que se quiera hacer, además si python no cumple las necesidades puedes extenderlo con C y C++ para los módulos donde se necesite máxima eficiencia.

Eso de "hacer como que sabes" es una estupidez, con python puedo hacer lo mismo que tu en mucho menos tiempo, ¿Mas eficiente? Probablemente no, aunque depende de como programes tu, pero para el 90% de las apps que vayas a hacer tu la eficiencia pura es innecesaria.

Menos hablar desde la ignorancia que los prejuicios en este mundo son muy malos.

#75 No pretendía ser duro, pero si viene puramente a trollear este no es el sitio mas indicado.

1 respuesta
DantePD

#74 Creo que has sido un poco duro. Ya esta, no le demos mas vueltos.

Ya hemos hablado y me comento que no sacaria el tema C vs Python, pero tampoco le hablemos nosotros asi.

1 respuesta
sPNkKkKkKkKk

No os dais cuenta que no tiene ni siquiera puta idea de C tampoco? Es simplemente un TROLL con ganas de tocar las pelotas. Reportarle y punto.

KinachO

Ahh, las míticas discusiones de "mi lenguaje de programación es mejor que el tuyo", se echaban de menos. No os paséis.

Además, todos los lenguajes son buenos, depende qué necesitas vienen mejor unos u otros. Desechar uno porque sí, es limitarte y limitar tu trabajo. No es algo muy inteligente.

2
B

Vengo a dar envidia, me acaba de llegar esto desde amazon:

Para los que no lo conozcais:

“Hacking Secret Ciphers with Python” es un libro de Al Sweigart que pretende ser una guía destinada a principiantes para aprender criptografía y programar en Python.

Cuenta con el código fuente de varios sistemas de cifrado como el cifrado César, cifrado de transposición, cifrado de sustitución simple, cifrados multiplicativos y afines, cifrado Vigenère y herramientas de hacking para cada una de estos cifrados. Los últimos capítulos cubren el sistema de cifrado RSA y criptografía moderna de clave pública.

Básicamente el libro asume que el lector no sabe nada de criptografía ni programación y le ayuda a aprender, paso a paso, a escribir programas que puedan "romper" mensajes cifrados. Dos años de trabajo, 415 páginas y 1700 líneas de código, que pueden leerse online o descargar en pdf de forma totalmente gratuita o, si lo prefieres, comprarlo en formato tradicional en Amazon. Además, está dedicado a Aaron Swartz y el 100% de los ingresos obtenidos con sus ventas o donaciones irán a EFF, Creative Commons y Tor Project.

Está de forma gratuita online, pero viendo a quien se destinan los fondos y que está dedicado a una gran persona yo me he animado a comprarlo, para el que no tenga pasta o solo quiera curiosear aqui tiene:

Hacking Secret Ciphers with Python

Fuente de la descripción y enlace: Hackplayers

Un saludo!

1 3 respuestas
DantePD

#78 Wow que bueno. De pequeño me llamaba mucho la atencion la criptografia.

Ya nos contaras que tal cuando lo leas.

sPNkKkKkKkKk

#78 Super interesante. Ya nos contaras y lo mismo me decido y lo compro yo también.

Nucklear

#78 Hostia, los vi hace unos dias y olvidé por completo ponerlo. Lo mio no es la criptografía pero tiene una pinta que a punto estuve de comprarlo. ¡Que lo disfrutes!

1 mes después
Memorex

Que merece más la pena ahora mismo, 2.X o 3.X? Basicamente para trasladar toda la programacion que he hecho en la carrera en otros lenguajes y por trastear un poco.

1 año después
B

yo estoy empezando a estudiar python con un profesor online, de paso estoy haciendo lo de code academy en mis ratos libres y genial :)

E

Me lo guardo! Muchas gracias.

D

Edit: Nada, ya está en el primer post xD

2 meses después
KooPad

Soléis publicar los códigos en paginas web para después ponerlo en el CV?

1 respuesta
G

Este link debería aparecer con luces de neón: http://librosweb.es/libro/algoritmos_python/

Ni en inglés he encontrado nada de mayor ayuda para iniciarse con esto.

4 1 respuesta
B

#87 Tiene buena pinta, no lo conocía. Buen aporte!

microhelix

Ya que reflotáis esto, ¿alguien sabe cómo manipular string resources en python? Me explico.

En Android hay una forma bastante sencilla de tener diferentes recursos de texto para poder mantener diferentes lenguajes en la app. Tienes una carpeta con resources-xx, donde en xx va el idioma. Ahí guardas un xml y de ese xml es de donde vas cogiendo el texto de los widgets, menús etc.

¿Hay algo parecido en python?

3 respuestas
cabron

#89

Eso es parte de las herramientas de Android, que añaden un plugin al IDE para que genere una clase llamada R de forma automática, no es cosa del lenguaje.

1 respuesta