Python es un lenguaje de propósito general y multiparadigma con una sintaxis limpia y sencilla, por lo que es una buena elección para aprender a programar.

Python fue creado en los 90 por Guido van Rossum, su nombre viene de los humoristas britanicos Monty Python.

Así como Ruby cuenta con los frameworks Ruby on Rails y Sinatra, en Python tienes django y Flask para crear aplicaciones web.

¿Qué podemos hacer con Python?

  • Aplicaciones de escritorio
  • Aplicaciones web
  • Ciencia de datos
  • Administración de servidores
  • Seguridad y pentesting
  • Procesamiento textos (NLP)
  • Visión artificial
  • Machine Learning
  • Videojuegos
  • Aplicaciones Backend

Empezar a programar en Python

Sin instalación

La manera más fácil de probar el lenguaje es utilizar replit o anyfidle, son herramientas tipo codepen pero que te permiten programar en Python.

replit

Con instalación

Las herraminetas mencionadas anteriormente están bién para probar el lenguaje, pero si quieres hacer algo serio, tarde o temprano tendrás que instalar Python en tu computadora.

Para instalar Python ves a python.org y descarga la versión de Python para tu sistema operativo.

Una vez instalado Python en tu computadora ya puedes abrir la terminal y escribir python3, esto te abrirá un interprete de Python en el que ya puedes empezar a ejecutar funciones de Python detrás de los tres símbolos >>>

python

Entorno de programación en Python

Editores recomendados:

Características principales del lenguaje

  • Es un lenguaje interpretado, no compilado.
  • Usa tipado dinámico, una variable puede tomar valores de distinto tipo.
  • Es fuertemente tipado, el tipo no cambia de manera repentina. Para que se produzca un cambio de tipo se tiene que hacer una conversión explícita.
  • Es multiplataforma, el mismo código funciona en macOS, Windows y Linux.

Indentación

Python utiliza la indentación para indicar el inicio y fín de un bloque de código.

def saludar(first_name, last_name):
    return("Hi " + first_name + " " + last_name + "!") # código indentado
print(saludar("Ana", "Toledo"))

Comentarios

Comentario de una línea.

# Hola soy un comentario

Los comentarios de varias líneas se hacen con 3 comillas dobles o simples al inicio y al final del comentario.

"""
Comentario
de varias
líneas
"""

Variables en Python

Las variables nos permiten guardar valores que más tarde podemos utilizar en nuestro código. Las variables pueden guardar cualquier tipo de dato, enteros, flotantes, booleanos y cadenas o Strings, también podemos guardar listas y tuplas.

# variable que contiene un string
mascota = "Gato"
# variable que contiene un booleano
raza_peligrosa = False
# variable que contiene un número entero
edad = 2

Tipos de datos en Python

  • Booleanos (bool)
  • Números (int, float, complex)
  • Cadenas (String)
  • Listas (List)
  • Tuplas (Tuple)
  • Diccionarios (Dict)
  • set (set)

Mutables Se pueden modificar tras su creación.

  • Listas
  • Dicionarios
  • Sets

Inmutables No se pueden modificar tras su creación.

  • Booleanos
  • Números
  • Cadenas
  • Tuplas

Números en Python

Enteros (int) números sin decimales, por ejemplo 500 o -350.

sumar_enteros = 5 + 5
print(sumar_enteros)  # Output: 10

Números con decimales (float) por ejemplo 0.20 o -34.000.

sumar_decimales = 5.50 + 0.8
print(sumar_decimales)  # Output: 6.3

Operadores en Python

Los operadores son símbolos que le indican al intérprete que realice una operación específica, como aritmética, comparación, lógica, etc.

Operadores aritméticos

Operador Descripción Uso
+ Suma 5 + 5 = 10
- Resta 4 - 3 = 1
* Multiplicación 8 * 2 = 16
/ División 16 / 2 = 8
% Módulo 16 % 3 = 1
** Exponente 12 ** 3 = 1728
// División entera 18 // 5 = 3

Operadores Condicionales

Los condicionales en programación se utilizan para elegir entre diferentes opciones dependiendo del valor de las variables.

Con los condicionales en Python puedes construir cosas tan geniales como una pequeña calculadora.

num1 = float(input("Introduce un número: "))
op = input("Introduce un operador: ")
num2 = float(input("Introduce el segundo número: "))

if op == '+':
    print(num1 + num2)
elif op == '-':
    print(num1 - num2)
elif op == '/':
    print(num1 / num2)
elif op == '*':
    print(num1 * num2)
else:
    print('Introduce un operador válido')

En este ejemplo de uso de los condicionales solamente hemos utilizado el operador == de igualdad pero el resto de operadores condicionales te serán de gran utilidad enseguida.

Operador Descripción
== Igualdad
!= Desigualdad
> Mayor que
>= Mayor o igual a
< Menor o igual a

Este condicional chequea que el usuario sea mayor de 21 años, si la condición no se cumple imprime un mensaje por pantalla.

age = 18

if age < 21:
  print(f"Lo siento debes ser mayor de 21 años.")

# Output: Lo siento debes ser mayor de 21 años.

Operadores lógicos

Operador Descripción Uso
or Devuelve True si alguno de los operandos es True a or b
and Devuelve True si ambos operandos son True a and b
not Devuelve True si alguno de los operandos es False not a

Operadores Bit a Bit

Operador Descripción
& Realiza bit a bit la operación AND en los operandos
| Realiza bit a bit la operación OR en los operandos
^ Realiza bit a bit la operación XOR en los operandos
~ Realiza bit a bit la operación NOT bit a bit. Invierte cada bit en el operando
>> Realiza un desplazamiento a la derecha bit a bit. Desplaza los bits del operador de la izquierda a la derecha tantos bits como indica el operador de la derecha
<< Realiza un desplazamiento a la izquierda bit a bit. Desplaza los bits del operando de la izquierda a la izquierda tantos bits como especifique el operador de la derecha

Operadores de Pertenencia

Un operador de pertenencia se emplea para identificar pertenencia en alguna secuencia (listas, strings, tuplas).

in y not in son operadores de pertenencia.

in devuelve True si el valor especificado se encuentra en la secuencia. En caso contrario devuelve False.

not in devuelve True si el valor especificado no se encuentra en la secuencia. En caso contrario devuelve False.

a = [1,2,3,4,5]
  
#Esta 3 en la lista a?
print 3 in a # Muestra True 
  
#No está 12 en la lista a?
print 12 not in a # Muestra True
  
str = "Hello World"
  
#Contiene World el string str?
print "World" in str # Muestra True
  
#Contiene world el string str? (nota: distingue mayúsculas y minúsculas)
print "world" in str # Muestra False  

print "code" not in str # Muestra True

Iteraciones o loops en Python

Se utilizan para automatizar tareas repetitivas.

Bucle while que imprime una cuenta atrás por pantalla.

n = 5
while n > 0:
    print(n)
    n = n -1
print('Lets go!')

# Output: 
'''
5
4
3
2
1
Lets go!
'''

Bucle for que recorre una lista e imprime cada uno de sus ítems por pantalla:

plants = ['Poto', 'Cintas', 'Lirio', 'Ficus']

for plant in plants:
    print(plant)

# Output: 
'''
Poto
Cintas
Lirio
Ficus
'''

Funciones en Python

Las funciones en Python se crean mediante la instrucción def más el nombre de la función. Para invocar la función escribimos el nombre de la función más paréntesis y los parámetros de la función si los tiene. No todas las funciones tienen que tener parámetros.

def myfunc(x, y, z):
    result = x + y + z
    return result

print(myfunc(2, 4, 3)) # Output: 9

Funciones lambda

Las funciones anonimas en Python se definen con lambda.

result2 = lambda x, y, z: x + y + z

print(result2(2, 4, 3)) # Output: 9

Posteado en Programación con : Python