3.4 “How to Think like a Computer Scientist: Python”(Español) Conoce tus mensajes de errores.

--Originally published at Python fundamentals

Hola, esta vez vamos a hablar de los mensajes de errores que podemos encontrar en Python, cabe aclarar que existen muchos más mensajes que nos pueden llegar a aparecer, correspondientes a otros tipos de errores. Esta vez vamos a cubrir los tipos de mensajes de errores más comunes, comenzamos:

ParseError: Error de sintaxis, aparece cada vez que olvidemos escribir una coma, cerrar un paréntesis, poner un espacio; prácticamente cualquier cosa que no la hayamos escrito bien dentro de la sintaxis de Python cuenta como un error de sintaxis.

Type error: Error de “incompatibilidad”, esto ocurre cuando tratas de utilizar 2 objetos que son incompatibles entre si, un buen ejemplo es cuando tratas de sumar, multiplicar o dividir una cadena de texto y un número entre si.

Screenshot 2017-02-04 11.23.50.png

NameError: Un error de nombres ocurre cada vez que una variable no está definida, ojo, que puede ser que una variable la hayas definido en la octava linea por poner un ejemplo, pero que la hayas usado en la tercera, en este caso no va a funcionar, debido a que el código se ejecuta de abajo hacia arriba y cuando ejecuta la tercera linea, como aun no ha encontrado la declaración de la variable, el programa nos mostrará el error.

 

 


3.3 “How to think like a computer scientist:Python”(Español) Tips para corregir errores

--Originally published at Python fundamentals

Corregir errores es algo muy parecido a ser un detective, ya que existen 2 principios fundamentales que se deben de tomar en cuenta cada que se busca corregirlos.

1° Hasta que se solucione el error ¡Todos son sospechosos! Tus variables, tu lógica de variables, esa función que acabas de declarar y sus parámetros ¡Todos! Todos, excepto Python en si. Muchos programadores principiantes pueden llegar a culpar al lenguaje en si, lo cual no tiene sentido ya que es un lenguaje sumamente extenso, con años de desarrollo y es implementado actualmente por compañías enormes para llevar a cabo tareas muy complejas, culparlo no tiene lógica.

2° Como todo detective, debes de saber interpretar las pistas cada vez que algo no sale bien y tenemos un error, la computadora nos arroja algún indicador, bien sea un código de error o nuestro propio output pero con resultados inesperados (como en el caso de nuestra calculadora que al principio nos concatenaba números con strings, mostrandonos un output diferente al esperado, pero mostrandolo al final de cuentas).

 

 

 


3.1/3.2 “How to think like a computer scientist: Python”Debugging(Español)

--Originally published at Python fundamentals

Hola! Hoy les traigo otro resumen en español del libro How to think like a computer scientist, esta vez serán 2 capítulos en 1, la verdad es que el capitulo 3.1 era bastante corto y el 3.2 también por lo que decidí pegarlos en un sólo post, disfrutenlo y espero que aprendan.

3.1 ¿Cómo ser exitoso en la programación?

maxresdefault

Para ser exitoso en la programación es fundamental que así como sepas escribir código, también sepas “repararlo”, corregir errores, esto no sólo te ayudará a codear mejor, sino también a disfrutar más de programar.

Fin del capitulo 3.1

(¿Qué?A mi no me mires, te dije que era muy corto)

3.2 ¿Cómo evitar los errores?

Empieza en pequeño, ¿Cuántas veces no has empezado ha codear y después de varios minutos y 20 lineas de código decides probar el código sólo para darte cuenta que no sirve? Bien pues la lección 1 es: No lo hagas; cada linea de código, cada comando, cada instrucción debe de ser probada a penas es escrita; esto te va a ayudar a aislar el problema y así poder identificarlo de manera mucho más fácil.

Sí vas a hacer un input en Python que realice operaciones a partir de datos que se le subministran a nuestra linea de comandos,  no escribas las instrucciones primero, ni el input, cerciórate primero de que al menos el archivo está debidamente sincronizado, luego crea el input, prueba el input y entonces comienza con las instrucciones, una a una y no empieces con la otra hasta que hallas probado las otras y estés seguro de que todas las anteriores funcionan, recuerda que nuestra misión en todo momento, no es sólo mejorar nuestro codigo ya existente, sino mantenerlo funcionando.

 

 


2.11 “How to think as a computer scientist:Python”(Español)

--Originally published at Python fundamentals

Hey! Esta vez toca hablar de actualización de variables, lo cual es muy parecido a reasignar, sin embargo, con la diferencia de que en la actualización utilizaremos el viejo valor de la variable para crear un valor nuevo. Les mostraré un ejemplo para que quede mejor entendido.

Supongamos que tenemos un cajero que nos va a mostrar el saldo de nuestra tarjeta de débito luego de retirarle 500 pesos. La tarjeta ya tenía un saldo predeterminado, un saldo “x” y a partir de dicho saldo se va a efectuar una resta y se va a calcular el saldo nuevo.

Ahora bien, esta es la belleza de la actualización de variables, no tienes que volver a escribir el viejo valor de tu variable para después restarle 500, puedes escribir directamente el nombre de la variable y restarle 500 directamente en el lado de la asignación, así:

variable = 3000

Así, en lugar de poner:

variable = 3000 – 500

Escribimos simplemente:

variable = variable – 500

 

He aquí una foto del código:

Screenshot 2017-02-01 14.40.38.png


2.10 “How to think as a computer scientist: Python”(Español)

--Originally published at Python fundamentals

Hola, ya llegamos al capitulo 2.10 de “How to think as a computer scientist” y en este capitulo super corto toca hablar de reasignación.

La reasignación es en pocas palabras cambiar el viejo valor de una variable por otro nuevo, su sintaxis es básicamente la misma de la asignación pero la computadora reconocerá el valor nuevo sobre el viejo valor ya que el nuevo se encontrará en una linea de código más reciente.

Para poner un ejemplo, todo el mundo recuerda el popular videojuego “Pokemon”, bueno pues había una función en el videojuego dónde podías cambiar el nombre de tu pokemon por medio de un personaje llamado inspector de motes

¿Por qué menciono a Pokemon? Primero, porque me gusta pokemon y segundo, porque internamente, esa parte especifica del videojuego funciona por medio de una reasignación.

5449676595_f9f92e6843_o

Imagen  de Spensatron 5000

Digamos que tu Pokemon se llamaba Pikachu, y ahora se va llamar “el jeringas”, pues bueno, la variable nombre, tenía un valor viejo ya, “pikachu”, y cuando se hace la reasignación simplemente se vuelve a escribir el nombre de la variable más abajo, esta vez, con el valor nuevo.

screenshot-2017-01-31-22-39-55

Como ves ahora el valor de la variable nombre no es “pikachu”, sino “el jeringas” y podemos usar este nuevo valor siempre que queramos simplemente escribiendo nombre.

 

 


2.9/2.10 “How to think as a computer scientist:Python”

--Originally published at Python fundamentals

Hola, en este post voy a contar de manera resumida el capitulo 2.9 del libro”How to think as a computer scientist:Python”, en este capitulo se habla del orden de los operandos y las leyes de precedencia, como estas funcionan en Python.

La verdad es que no es nada nuevo, el orden de las operaciones en python funciona igual al orden de las operaciones del álgebra.

 

piramide_de_jerarquiaObtenido de dosisacademica

Las primeras operaciones en ejecutarse serán las de adentro de los paréntesis, después potencias y raíces y así bajando hasta llegar a suma y resta.

De modo que si queremos sumar 7 + 3 y luego multiplicarlo por 2, pero escribimos print(7+3*2), entonces nos arrojará 13 (primero hace la multiplicación que está arriba y luego la resta que está abajo).

Para arreglarlo tendremos que colocar paréntesis a la suma:

screenshot-2017-01-31-12-57-29

Otra cosa que menciona es que cuando tenemos a 2 operandos de la misma jerarquía en la misma linea de código, la computadora ejecutará las operaciones de derecha a izquierda.

 

Y eso es todo el capítulo 2.9, yo sé que suena muy obvio pero la verdad considero que es importante recordarlo para futuros errores de lógica que a futuro se nos puedan llegar a presentar.


Hi!

--Originally published at Python fundamentals

Hola.

Me llamo Giovanni Esquivel, tengo 18 años y estudio ingeniería en sistemas computacionales, me gusta jugar videojuegos, comer tacos de suadero y leer cosas interesantes como WIRED, Techcrunch y Hacker News. Este blog tiene como propósito enseñar Python partiendo desde un nivel muy básico, sin embargo también espero cubrir cosas más avanzadas a futuro, como juegos e inteligencia artificial  hecha en Python (no machine learning pero si inteligencia artificial). Me gustaría aclarar que estoy haciendo esto mientras también estoy aprendiendo, estos temas también son nuevos para mi, por lo que si notas que se me escapó algo siente te libre de decirlo.

Todos los post contarán con una traducción al ingles y un vídeo tutorial en español, espero en unos meses, cuando mejore mi ingles, pueda comenzar a publicar tutoriales en dicho lenguaje. Por ultimo te recomiendo seguirme en mis redes sociales y sobre todo ver la documentación en Github.

 

Nos andamos viendo y divierte te codeando!

 

 

My name is Giovanni Esquivel, i’m 18 years old and i’m studying engineering in information systems, i like to play videogames, eat tacos de suadero and read interesting stuff, like Techcrunch, Hacker News or WIRED. This blog have as purpose teach people to code in Python starting with a very basic level.Nevertheless i hope to show some advanced stuffs like games and AI  made it in Python (not machine learning, but AI).I want to be clear on this, and the thing is that im doing this blog while i’m learning, this topics are new to me, so if you see something that is missing, you cant correct me freely any time that you want.

Every post is going to have a translation to spanish and also a video tutorial, in spanish too, i expect to publish a version in

Continue reading "Hi!"