Tutorial de Python

Python es un lenguaje de moda, en la actualidad existen muchas de las ofertas de empleo que requieren conocimientos de Python, sobre todo en entidades que apuestan por el software libre y que, generalmente tienen sus aplicaciones web basadas en tecnología PHP. A rasgos generales, Python es parecido a PHP. 

Quiero aprovechar esta entrada y las próximas que escriba sobre Python para  recordar en el futuro lo que estoy aprendiendo, espero que también te sirva a tí que me lees. Y por favor, si me equivoco, corrígeme para que esto sea realmente útil.

Lo primero que debemos hacer es crear con un editor de textos o con un IDE que soporte Python un fichero que llamaremos "primer.py" que luego lanzaremos desde el intérprete de python.

Este es un ejemplo de script (módulo) en Python ("primer.py"):
#!/usr/bin/python
#-*- encoding:utf-8 -*-
#Es muy importante que la declaración de la codificación 
#de caracteres sea la primera línea antes del script.

#A.B: Probando Python

#Salida estandar
print "\nProbando la salida por estándar..."

#Creando variables de tipo primitivo
cadena = "Hola mundo"
entero = 5
real = 0.25
exponente = 1e-3
complejo = 2 + 3j

#Imprimiéndolas por pantalla
print "\n"
print "El tipo de cadena es" , type(cadena) , "y el valor es" , cadena
print "El tipo de entero es" , type(entero) , "y el valor es" , entero
print "El tipo de real es" , type(real) , "y el valor es" , real
print "El tipo de exponente es",type(exponente),"y el valor es",exponente
print "El tipo de complejo es",type(complejo),"y el valor es",complejo

#Los operadores son los típicos de todos los lenguajes. Destacar
#que se usa // para la división entera y / para la división real.
#Sin embargo, si usamos la división real con dos enteros, Python
#entiende que queremos que devuelva un entero. Es decir, que tanto
#3 // 2 como 3 / 2 devuelve 1. Para que la división sea real uno de
#los operandos debe ser real. Ej: 3 / 2.0 o bien, 3.0 / 2. 
#Otra opción es realizar un casting float(3)/2

print "\n"
print "Probando la división..."
print "3 / 2 = ", 3/2 
print "3 // 2 = ", 3//2
print "3.0 / 2 = ", 3.0 / 2 
print "float(3) / 2 = ", float(3) / 2
print "\n"

separador = "*"
#Multiplicamos el separador por 70 (Concatena 70 veces la cadena '*')
print separador * 70 

#Entrada por teclado
print "Probando la entrada por teclado. Pro favor escriba algo:"
entrada = raw_input()
print "\n"
print "Usted ha escrito: '" , entrada , "'" , "y el tipo es", type(entrada) 
print "\n"

#Vamos a definir una función
def miPrimeraFuncion(cad, val):
 """Esto saldrá en la ayuda con el comando help()"""
 print cad,val
 return "\nTerminado"

#Podemos no devolver nada, en ese caso Python devuelve None,
#que es parecido al null de Java. En Python no existen los 
#procedimientos.

#Llamamos a la función creada:
print "Llamada a la función con los parámetros cadena y complejo..."
print miPrimeraFuncion(cadena, complejo)

Para ejecutar el script debemos ir a una consola y escribir la sentencia: "python primer.py". La salida que genera este script es la siguiente:

antonio@i6253:~$ python primer.py

Probando la salida por estándar...

El tipo de cadena es <type 'str'> y el valor es Hola mundo
El tipo de entero es <type 'int'> y el valor es 5
El tipo de real es <type 'float'> y el valor es 0.25
El tipo de exponente es <type 'float'> y el valor es 0.001
El tipo de complejo es <type 'complex'> y el valor es (2+3j)

Probando la división...
3 / 2 =  1
3 // 2 =  1
3.0 / 2 =  1.5
float(3) / 2 =  1.5

**********************************************************************

Probando la entrada por teclado. Pro favor escriba algo:
Hola mundo!

Usted ha escrito: ' Hola mundo! ' y el tipo es <type 'str'>

Llamada a la función con los parámetros cadena y complejo...
Hola mundo (2+3j)

Terminado


Algunas observaciones generales e importantes son:
  • No existe símbolo para terminar la sentencia, es decir, una línea, una sentencia.
  • No hay que declarar los tipos de las variables.
  • La línea #-*- encoding: utf-8 -*- es necesaria para que python sepa cuál es la codificación de caracteres que debe tomar, en otro caso tendremos problemas con los acentos. Y debe estar en el comienzo del script.
  • El símbolo # sirve para comentarios de una sola línea.
  • Lo que escribimos entre """ y """ es un comentario de varias líneas .
  • El comentario que está debajo de la función que creamos es el que saldrá cuando pidamos la ayuda de la función. Sería algo así en el intérprete de Python: help(miPrimeraFuncion). Esto nos mostraría como ayuda lo que hemos puesto entre """ y """. 
En próximas entradas veremos un poco de orientación a objetos en Python y crearemos una clase, instanciaremos un objeto y llamaremos a sus métodos.
Share:
spacer

4 comentarios:

  1. ¿es más rápido que Bash?

    ResponderEliminar
  2. Pues es buena pregunta Arturo, no me lo había planteado, me lo apunto para investigarlo si alguien no nos saca antes de dudas.

    Un abrazo!

    ResponderEliminar
  3. Imagino que será más rápido. Pero la cuestión es si tiene Python tan a mano todos los comandos del sistema como tiene Bash.

    ResponderEliminar