Python Basics (I)

Como comenté hace un tiempecillo, estamos aprendiendo python en la universidad. Al ver que el nivel con el que hemos empezado no es para nada básico, hilos y sockets, he decidido aprender un poco del lenguaje por mi cuenta porque me ha parecido bastante rápido (teniendo en cuenta que es interpretado) y sencillo a la par de potente.

Haré unos cuantos posts que tendrán como título Python Basics, en los que iré comentando cosas básicas del lenguaje. Hoy por ejemplo me voy a centrar en las sentencias de control de flujo (los if … then … else de toda la vida y los bucles for y while).

En el manual que estoy siguiendo, bastante simplón pero es lo que más me gusta para empezar a tocar un lenguaje sólo contemplan 3 estructuras de control de flujo: if, for y while. Vamos con ellos:

Condiciones if:

La sintaxis es bastante sencilla:

if condicion:

    sentencia

elif:

    sentencia

else:

    sentencia

¿Sencillo verdad? Quizás debería haber comentado en un primer post que python no usa llaves ni ningún carácter para delimitar las funciones o los bloques de código (aunque éste ejemplo nos viene de puta madre)… los distingue por la tabulación. Puede parecer un poco más lioso pero se consigue que se tenga un código mucho más legible en el sentido de las estructuras.

Bucles for:

La sintaxis no es para nada más compleja que lo anterior:

for variable in secuencia:

    sentencia

¿Que narices es eso de sencuencia? También me lo he preguntado yo y he visto que python nos permite hacer cosas como éstas:

Un bucle sencillo sería de éste pelo:

for i in range(1, 3):

print i

Que nos daría como salida: 1,2 y 3 en líneas separadas. Pero disfrutamos también de la ventaja de hacer cosas como ésta:

coordenada = [(1, 1), (1, 2), (1, 3), (1, 4)]

for x,y in coordenada:

print x,y

Que nos daría como salida: 1 1, 1 2, 1 3 y 1 4 en líneas separadas. Mola ¿eh? No tenemos que acceder al array para sacar los elementos sino que iteramos directamente sobre él de una forma MUY sencilla. Debéis saber que ésto de recoger dos variables no es sólo en éste tipo de bucles ya que en python podemos llamar a funciones que devuelven dos valores de ésta forma:

a, b = funcionDoble()

y tendremos en a y en b cada uno de los valores que devuelve. Muy cómodo también.

Bucles while:

La sintaxis, más sencilla todavía que en el tipo anterior de bucles:

while condicion:

    sentencia

Muy, muy fácil. Si queremos que en alguna comprobación dentro del bucle se rompa éste (por ejemplo para romper un while True o algún bucle largo por eficiencia) podemos usar la sentencia break que hará que salgamos del bucle inmediatamente. Ya sabéis en la universidad siempre enseñan que esas cosas no deben hacerse, pero yo soy de la opinión de que si realmente sabes lo que haces debes poder usar todas las ventajas que te ofrece el lenguaje que uses. ¿o acaso la sobrecarga de operadores de C++ que no disfrutamos en Java por motivos de seguridad es una desventaja?😉

Bueno, hasta aquí éste primer post sobre conceptos básicos de python. En el siguiente, que planeo escribir mañana, me meteré con la definición de funciones y, posiblemente, con la definición de clases porque me parece que ambas cosas van muy liagadas. La diferencia entre un método y una función es realmente meramente teórica en la mayoría de los lenguajes.

Espero que os sea útil para los que estéis pensando en empezar con éste lenguaje y os anime un poco al ver lo realmente sencillo que es, un saludo a todos😀

  1. 21/11/07
    Trackback from : Python Basics (II) « beGNU

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: