Por qué Python?

Facilidad de aprendizaje: Python tiene un sintaxis simple y fácil de leer, que se asemeja al lenguaje natural. 

Versatilidad: Desde desarrollo web y creación de scripts hasta análisis de datos y machine learning, Python tiene bibliotecas y frameworks para prácticamente cualquier cosa que se te ocurra.

Amplia comunidad y recursos: Python cuenta con una de las comunidades de desarrolladores más grandes y activas del mundo.

Gratuito y de código abierto:  es un lenguaje de código abierto y gratuito.

Adecuado para principiantes:  es un lenguaje excelente para comenzar en el mundo de la programación.

Instalar Python

Instalar Python

Se requiere un IDE (Entorno de desarrollo integrado): es una aplicación que te ayuda a programar de forma más eficiente. Combina en un solo lugar todo lo que necesitas para desarrollar software

  • Asistencia en la estructura
  • Detección de errores
  • Depuración
  • y mucho más

 

Por le momento utilizaremos Visual Studio Code: https://code.visualstudio.com/download

print

Declaración que al ejecutarse muestra (o imprime) en pantalla el argumento que se introduce dentro de los paréntesis.

mostrar texto: ingresamos entre comillas simples o dobles los caracteres de texto que deben mostrarse en pantalla.

print("Hola mundo")  

mostrar números: podemos entregarle a print() el número que debe mostrar, o una operación matemática a resolver. No empleamos comillas en estos casos

print(150 + 50)

strings

Los strings en Python son un tipo de dato formado por cadenas (o secuencias) de caracteres de cualquier tipo, formando un texto.

Concatenación: unificación de cadenas de texto:

print("Hola" + " " + "mundo")  

Caracteres especiales: Indicamos a la consola que el caracter a continuación del símbolo \ debe ser tratado como un caracter especial.

\" > Imprime comillas

\n > Separa texto en una nueva linea

\t > Imprime un tabulador

\\ > Imprime la barra invertida textualmente

input

Función que permite al usuario introducir información por medio del teclado al ejecutarse, otorgándole una instrucción acerca del ingreso solicitado. El código continuará ejecutándose luego de que el usuario realice la acción. 

input("Dime tu nombre: ") 
print("Tu nombre es " + input("Dime tu nombre: "))

Proyecto #1

Tipos de datos

Variables

Las variables son espacios de memoria que almacenan valores o datos de distintos tipos, y (como su nombre indica) pueden variar. Se crean en el momento que se les asigna un valor, por lo cual en Python no requerimos declararlas previamente.

pais = "Nicaragua"
nombre = input("Escribe tu nombre: ")
print("Tu nombre es " + nombre)
num1 = 55
num2 = 45
print(num1 + num2)
 

Variables

Existen convenciones y buenas prácticas asociadas al nombre de las variables creadas en Python. Las mismas tienen la intención de facilitar la interpretabilidad y mantenimiento del código creado.

 

Reglas

  • Legible: nombre de la variable es relevante según su contenido
  • Unidad: no existen espacios (puedes incorporar guiones bajos)
  • Hispanismos: omitir signos específicos del idioma español, como tildes o la letra ñ
  • Números: los nombres de las variables no deben empezar por números (aunque pueden contenerlos al final)

Variables

reglas

  • Signos/símbolos: no se deben incluir : " ' , < > / ? | \ ( ) ! @ # $ % ^ & * ~ - +
  • Palabras clave: no utilizamos palabras reservadas por Python

integers & floats

Existen dos tipos de datos numéricos básicos en Python: int y float. Como toda variable en Python, su tipo queda definido al asignarle un valor a una variable. La función type() nos permite obtener el tipo de valor almacenado en una variable.

int

Es un número entero, positivo o negativo, sin decimales, de un largo indeterminado.

num1 = 7 
print(type(num1))

float

Float, o "número de punto flotante" es un número que puede ser positivo o negativo, que a su vez contiene una o más posiciones decimales

num2 = 7.525587
print(type(num2))

Conversiones

Python realiza conversiones implícitas de tipos de datos automáticamente para operar con valores numéricos. En otros casos, necesitaremos generar una conversión de manera explícita.

int(var)

float(var)

Formatear cadenas

Para facilitar la concatenación de variables y texto en Python, contamos con dos herramientas que nos evitan manipular las variables, para incorporarlas directamente al texto:

Función format: se encierra las posiciones de las variables entre corchetes { }, y a continuación del string llamamos a las variables con la función format

print("Mi auto es {} y de matrícula {}"
.format(color_auto,matricula))

Formatear cadenas

Cadenas literales (f-strings): a partir de Python 3.8, podemos anticipar la concatenación de variables anteponiendo f al string 

print(f"Mi auto es {color_auto} y de matrícula {matricula}"

Operadores matemáticos

Veamos cuáles son los operadores matemáticos básicos de Python, que utilizaremos para realizar cálculos:

Redondeo

Ejemplos

print(round(100/3))

print(round(12/7,2))

El redondeo facilita la interpretación de los valores calculados al limitar la cantidad de decimales que se muestran en pantalla. También, nos permite aproximar valores decimales al entero más próximo.

Redondeo (II)

El redondeo facilita la interpretación de los valores calculados al limitar la cantidad de decimales que se muestran en pantalla. También, nos permite aproximar valores decimales al entero más próximo.

Proyecto #2

Trabajas en una empresa donde los trabajadores reciben comisiones por un 13% de las ventas totales y se desea realizar el cálculo de las comisiones, simplemente preguntando su nombre y cuánto han vendido ese mes. Por ejemplo

 

Nombre del trabajador: Pedro

Ventas del mes: 50000

 

La salida sería

 

Ok Pedro, este mes ganaste C$ 6500

index()

Utilizamos el método index( ) para explorar strings, ya que permite hallar el índice de aparición de un caracter o cadena de caracteres dentro de un texto dado.

string.index(value, start, end)

variable que almacena un string

las apariciones antes del índice start se ignoran

caracter(es) buscado(s)

las apariciones luego del índice end se ignoran

index()

string.rindex(value, start, end)

Búsqueda en sentido inverso

*: En Python, el índice en primera posición es el 0

devuelve el caracter en el índice i*

string[i]

substrings

string[start:stop:step]

Podemos extraer porciones de texto utilizando las herramientas de manipulación de strings conocidas como slicing (rebanar).

índice del final del sub-string (no incluido) 

índice de inicio del sub-string (incluido)

paso

substrings

Otros métodos para strings

upper() - pasar a mayusculas

lower() - pasar a minusculas

split() - separar en partes (lista de palabras)

join() - unir cadenas usando un separador

find() - encontrar un substring

replace() - reemplazar un substring

 

Ver documento con más métodos

Propiedades de strings

Esto es lo que debes tener presente al trabajar con strings en Python:

  • son inmutables: una vez creados, no pueden modificarse sus partes, pero sí pueden reasignarse los valores de las variables a través de métodos de strings
  • concatenable: es posible unir strings con el símbolo +
  • multiplicable: es posible concatenar repeticiones de un string con el símbolo *
  • multilineales: pueden escribirse en varias líneas al encerrarse entre triples comillas simples (''' ''') o dobles (""" """)
  • determinar su longitud: a través de la función len(mi_string)
  • verificar su contenido: a través de las palabras clave in y not in. El resultado de esta verificación es un booleano (True / False)

Flujo de control

Operadores de comparación

Tablas de verdad

if

if else

Resumen

- Una declaración if se puede utilizar para ejecutar código condicionalmente, dependiendo de si la condición de la declaración if es Verdadera o Falsa.
- Una declaración elif (es decir, "si no") puede seguir a una declaración if. Su bloque se ejecuta si su condición es Verdadera y todas las condiciones anteriores han sido Falsas.
- Bloque else al final, su bloque se ejecuta si todas las condiciones anteriores han sido Falsas.

- Los valores 0, 0,0 y la cadena vacía se consideran valores Falsos. Cuando se utilizan en condiciones se consideran falsas. Siempre puedes ver por ti mismo qué valores son Verdaderos o Falso pasándolos a la función bool().

Ciclo while

Ciclo while

Ciclo infinito

break

continue

num = 0
while num < 5:
    # El lugar del incremento es muy importante
    num = num + 1
    # Se imprimen los número del 1 al 5, excepto el 3
    if num == 3:
        continue
    print(f'El número es {num}')

Resumen

  • Cuando la ejecución llega al final del bloque de una instrucción while, vuelve al principio para volver a comprobar la condición.
  • Presiona Ctrl-C para interrumpir un bucle infinito.
  • Una instrucción break hace que la ejecución abandone inmediatamente el bucle, sin volver a comprobar la condición.
  • Una instrucción continue hace que la ejecución salte inmediatamente al principio del bucle y vuelva a comprobar la condición.

Ciclo for

total = 0
for num in range(5):
    print(f"num {num}")
    total = total + num
print(total)
  • Los bucles for se utilizan para ejecutar un bloque de código repetidamente un número específico de veces.
  • La función range() se utiliza para crear una secuencia de números que se puede utilizar en un bucle for.
  • Las instrucciones break y continue se pueden utilizar para controlar el flujo de un bucle for.

python

By Wilfredo Meneses

python

  • 448