Primeros pasos con Python
¡Hola! En estas fechas en las que estamos recluidos en casa quiero aprovechar para hacer mejoras en el blog y añadir algunos tutoriales más básicos para los que quieren empezar en el mundo de Python.
En este tutorial quiero condensar toda la información básica para iniciarte en Python. No pasa nada si no conoces nada de este lenguaje, pero, es importante que tengas conocimientos básicos de programación o ya hayas trabajado con otros lenguajes.
Instalación
Para este tutorial vamos a usar la última versión de Python. Para instalarlo os dejo unos videotutoriales que grabé para instalar Python3 en Windows, Ubuntu y MacOs:
Una vez instalado podéis verificar la instalación escribiendo el siguiente comando por consola:
python3 --version
Declaración de variables
En Python las variables no están tipadas, por lo tanto para declarar una variable simplemente escribimos su nombre y le asignamos un valor.
Ejemplo:
# Números enteros
numero = 1
# Cadenas de caracteres
cadena = 'hola'
# Floats
numero_flotante = 0.54
# Valor nulo
vacio = None
Para imprimir el valor de las variables utilizaremos print.
print(numero)
print(cadena)
print(numero_flotante)
print(vacio)
Listas, tuplas, diccionarios y sets
Tengo un tutorial donde explico como trabajar con listas, tuplas, diccionarios y sets.
Operadores relacionales
Como veréis en el ejemplo, los operadores relacionales son bastante similares en varios lenguajes de programación.
== Es igual
!= Es diferente
> Es mayor
>= Es mayor o igual
< Es menor
<= Es menor o igual
Operadores lógicos
En Python tenemos tres operadores lógicos que son:
and
or
not
Ahora vamos a ver como utilizar los operadores con los condicionales.
Condicionales if elif else
Para aprender a utilizar la sentencia if elif y else os dejo este tutorial donde lo explico a fondo, también os dejo un enlace a mi canal de youtube donde explico como utilizar estas sentencias.
Bucles
Al igual que en otros lenguajes, en Python podemos usar bucles for y while, aquí unos ejemplos.
Si queremos mostrar un listado del 0 al 9 podríamos utilizar el bucle for para crearlo.
for i in range(0, 10):
print(i)
Aquí estamos generando una lista con la función range que recibe un número de inicio y otro de fin y devuelve una lista, cada valor de la lista será asignado a la variable i y esta la imprimiremos con la función print.
Para el bucle while lo que haremos será mantenernos en el bucle mientras i sea menor o igual a 10, para ello haremos lo siguiente:
i = 0
while i <= 10:
i = i + 1
print(i)
else:
print('Ciclo terminado con éxito')
Si queréis profundizar más en los bucles while os dejo este tutorial.
Definir funciones
Para definir funciones lo haremos de la siguiente forma:
def <nombre-funcion>():
Ejemplo:
def main():
print('Hola mundo')
Si queremos definir una función, pero de momento no queremos darle ninguna funcionalidad podemos usar pass.
Ejemplo:
def main():
pass
Con esto tendríamos todo lo más básico para empezar a programar con Python. Ahora vamos a ejecutar nuestro primer script, para ello crearemos un archivo llamado holamundo.py en el que guardaremos nuestro código.
def main():
print('Hola mundo')
Ya tenemos una función definida, pero tal como está ahora no pasaría nada, para que funcione este código por consola debemos utilizar la función de entrada para los scripts en Python desde consola que es esta:
if __name__ == '__main__':
Y así nos quedaría el archivo:
def main():
print('Hola mundo')
if __name__ == '__main__':
main()
Ahora ejecutamos nuestro script con el siguiente comando:
python3 holamundo.py
Y se nos mostrará el resultado por pantalla.
Ya tenemos nuestro primer programa funcional, pero ¿Qué pasa si queremos recuperar parámetros que introduzca el usuario por consola?
Para ello utilizaremos la función input.
Ejemplo:
def main():
print('Introduce tu nombre')
nombre = input()
print(f'Hola {nombre}')
if __name__ == '__main__':
main()
Cuando el script llegue a la línea donde está la función input, el programa quedará en espera hasta que el usuario pulse intro. Todo el texto que se haya introducido entre que el script queda en espera y se pulse intro se guardará en la variable nombre.
Capturar excepciones
Para capturar excepciones tenemos bloques try como en otros lenguajes de programación.
try:
foo
except E as N:
foo
finally:
del N
Ejemplo:
try:
num = int(input("Por favor introduzca un número"))
except ValueError as err:
print(err)
Si no introduces un número se lanzará la excepción ValueError. Si queréis ver las excepciones más a fondo os dejo este tutorial.
El Zen de Python
Por último veremos el Zen de Python que es una colección de 20 principios de software. Así lo define la Wikipedia:
El Zen de Python es una colección de 20 principios de software que influyen en el diseño del Lenguaje de Programación Python, de los cuales 19 fueron escritos por Tim Peters1 en junio de 1999. El texto es distribuido como dominio público.
También lo puedes ver si accedes a la consola de Python e insertas este comando:
import this
Hermoso es mejor que feo.
Explícito es mejor que implícito.
Simple es mejor que complejo.
Complejo es mejor que complicado.
Sencillo es mejor que anidado.
Escaso es mejor que denso.
La legibilidad cuenta.
Los casos especiales no son lo suficientemente especiales para romper las reglas.
Lo práctico le gana a la pureza.
Los errores no debe pasar en silencio.
A menos que sean silenciados.
En cara a la ambigüedad, rechazar la tentación de adivinar.
Debe haber una - y preferiblemente sólo una - manera obvia de hacerlo.
Aunque esa manera puede no ser obvia en un primer momento a menos que seas holandés.
Ahora es mejor que nunca.
Aunque “nunca” es a menudo mejor que “ahora mismo”.
Si la aplicación es difícil de explicar, es una mala idea.
Si la aplicación es fácil de explicar, puede ser una buena idea.
Los espacios de nombres son una gran idea ¡hay que hacer más de eso!
Espero que os ayude mucho este tutorial a todos los que estéis empezando en Python. Si queréis profundizar más en este lenguaje, tengo una serie de tutoriales sobre como crear un CRUD en Python en el que aprenderemos a trabajar con archivos, conexiones a bases de datos, realización de test unitarios y cómo trabajar con clases y POO. Aquí os dejo el primer tutorial en el que crearemos la estructura y clases.
Espero que este post te ayude y como siempre, te recomiendo seguirme en Twitter para estar al tanto de los nuevo contenido. Ahora también puedes seguirme en Instagram donde estoy subiendo tips, tutoriales en vídeo e información sobre herramientas para developers.
Por último os dejo mi guía para aprender a trabajar con APIs donde explico todo el funcionamiento de una API, el protocolo HTTP y veremos como construir una API con arquitectura REST.
Nos leemos 👋.