Está en la página 1de 38

Fundamentos de Python

Luis Carlos Quesada Brenes


Ing. Sistemas informáticos.
Tema #1. Introducción a Python

Tema #2. Sintaxis de Python

Temario Tema #3. Estructura de código

Tema #4. Funciones

Tema #5. Programación funcional

Tema #6. Métodos principales de String, Listas y Diccionarios.

Tema #7. Introducción a orientación de objetos.

Tema #8. Herencia

Tema #9 Polimorfismo.
Objetivos del curso

PERSONAS PRINCIPIANTES EN BRINDAR BASES Y FUNDAMENTOS OFRECER UNA INTRODUCCIÓN A UNO


PROGRAMACIÓN. SÓLIDOS DE PROGRAMACIÓN DE LOS LENGUAJES MÁS PODEROSOS Y
FLEXIBLES DE HOY EN DÍA.
Evaluación

 4 Tareas 20% (5% c/u)


 2 Quiz 20% (10% c/u)
 2 Exámenes 40% (20% c/u)
 6 Labs 20% (3% c/u)

 Para cualquier consulta respecto a las fechas referirse al documento “Calendario-Temas-Actividades.docx”


Tema #1. Introducción a Python
Descarga e instalación y
“Hello World”

• Refiérase a la guía provista en los archivos en el link que les proveo sino pueden visitar
“Python.org”
Documento
de
instalación
 Lenguaje multipropósito de programación.

Desarrollo Científico .
Desarrollo Web .
Qué es Python?
Desarrollo de software.

Interfaz de usuario.
 Lenguaje de programación dinámico.

Se puede observar los resultados mientras se hace


el programa, de esta manera podemos notar como
Qué es Python? se ejecutan instrucciones y como se muestran los
resultados de estas.
 Lenguaje de alto nivel.

El programador únicamente se concentra en la


Qué es Python? lógica de su aplicación y no de como interactúa
con el hardware del computador. Ejemplos Python
no se encarga del manejo de memoria o pixeles en
pantalla.
Porqué Python?

 Simple y claro. Código legible y excelente para aprender a programar.


 Posee muchísimas librerías o bibliotecas.
 Comunidad y documentación.
 Fácil, entretenido y poderoso.
Mi primer programa “Hello World”

Es el tradicional programa “hola, mundo”, que en


la versión C++ del libro es así:
En la de versión Python se convierte en:

#include<iostream.h>
print ("Hola, Mundo“)

void main() {
cout << "Hola, mundo" << endl ; }
Tema #2. Sintaxis Python
Python esta compuesto por elementos que alimentan su estructura
como:

Elementos del 1. Variables


2. Tipos de datos
lenguaje 3. Operadores aritméticos
4. Comentarios
5. Tipos de datos complejos
Variables

En algunos lenguajes de programación, las variables se pueden entender como "cajas" en las que se guardan los
datos, pero en Python las variables son "etiquetas" que permiten hacer referencia a los datos (que se guardan en
unas "cajas" llamadas objetos).

 “Case sensitive” No es lo mismo una variable que se llame “f1” que una que se llame “F1”
 Tampoco podremos usar nombres de variables con tildes o con ñ.
 Para nombrarlas usaremos minúsculas y los espacios serán representados por “_” (guion bajo).
En Python se distingue entre objetos mutables y objetos inmutables:

Los objetos inmutables son objetos que no se pueden modificar. Por ejemplo, los números, las cadenas y las tuplas son
objetos inmutables

a=4
print (a)
>> 4
a=5
print(a)
>> 5

Los objetos mutables son objetos que se pueden modificar. Por ejemplo, las listas y los diccionarios son objetos
mutables.

a = [1,2,3]
a[0] = 4
print(a)
>> 4,2,3
Borrar variables

Es posible eliminar una variable de un programa con el comando


del(Variable).

f = 11
print(f)
del f
print(f)
 Números
 Cadenas o “Strings”
 Booleanos

Tipos de datos  Listas


 Tuplas
 Diccionarios
Enteros o Integer. Ej: X = 0 ,
Números 1, -1

Reales o Float. Ej: X = 0.58,


-15.25

Complejos Ej: X= 2,1 + 6j


Strings, Boolean, Listas

 Cadenas de enteros.
Inmutable  Almacenan una arreglo de datos de
diferentes tipos
Ejemplo:
 Valores falso y verdadero
Ejemplo:
Nombre = “Andrés”
Ejemplo: b = ['2.36', 'elefante', 1010, 'rojo']
Apellido
= ‘Morera’ isNumber = False
1 > 2 = False
Que es un “String”?

El concepto fundamental se refiere a una cadena de caracteres.

Es un tipo de dato que siempre se refiere a texto o a la versión representativa


de un dato cualesquiera en texto.
Tuplas y Diccionarios

Tuplas Diccionarios

Define los datos uno a uno entre un


Es una lista que no se puede campo y un valor, es mutable ejemplo:
modificar después de su creación, datos_basicos = {
es inmutable:
} "nombre":“Luis Carlos",
# Ejemplo simple
tupla = 'hola’, 15.54, 10 "apellidos":“Quesada Brenes",

# Ejemplo tuplas anidadas “numero_id":20850252,

otra = tupla, (1, 5, 3, 6, 5) “cursos":“[‘Python’, ‘C++’,


‘JavaScript’]",
Como referenciar un diccionario?

Podemos acceder al elemento de un Diccionario mediante la clave de este elemento, como veremos a
continuación:

print datos_basicos['nombre’] #Luis Carlos


print datos_basicos[‘apellidos’] #Quesada Brenes
print datos_basicos[‘numero_id'] #20850252

También es posible insertar una lista dentro de un diccionario. Para acceder a cada uno de los cursos
usamos los índices:

print datos_basicos['cursos'][0]#Python
print datos_basicos['cursos'][1]#C++
print datos_basicos['cursos'][2]#JavaScript
Palabras
reservadas o
“keywords”

False None True And As Assert


Se entiende por palabra reservada aquellos Async Await Break Class Continue Def
nombres que incorpora el lenguaje, los
cuales no pueden ser reemplazados por un Del Elif Else Except Finally For
valor determinado (funciones, clases, From Global If Import In Is
variables) o alterar su funcionamiento. Lambda Nonlocal Not Or Pass Raise
Return Try While With Yield
Siempre visible en su interprete con:
import keyword
print(keyword.kwlist)
SÍMBOLO S I G NI F I C A DO EJEMPLO R E S U LTA DO

+ Suma a = 10 + 5 a es 15

- Resta a = 12 - 7 a es 5

- Negación a = -5 a es -5

* Multiplicación a=7*5 a es 35

** Exponente a = 2 ** 3 a es 8

/ División a = 12.5 / 2 a es 6.25

// División entera a = 12.5 / 2 a es 6.0

% Módulo o Cociente a = 27 % 4 a es 3

Se debe recordar las prioridades que a cada operador se le da puesto


Operadores aritméticos que la lógica dentro del interprete de Python, hereda esta lógica y la
aplicará para cualquier ecuación que se le ingrese.
Comentarios

 Los comentarios son fundamentales para mantener claridad en el código con respecto al uso de
ciertas variables o funciones.

 Existen 2 maneras de ingresar comentarios en Python:

1. ” ” ” la triple comilla doble ” ” ”. Genera un bloque de código comentado.


2. Mediante el símbolo # previo a la sección de código que deseamos comentar. Genera una línea
de código para comentar.
Encoding y asignación múltiple

 # -*- coding: utf-8 -*-


Es relevante destacar la buena practica del uso del encoding en todos sus desarrollos, esto evita errores a causa de la
codificación de caracteres, especialmente en lectura de archivos de texto
Sin este se puede producir un error de sintaxis: SyntaxError: Non-ASCII character[...], a causa de caracteres extraños o pocos
comunes.

 El concepto de asignación múltiple se refiere a la posibilidad de asignar más de una variable a distintos objetos en una
misma línea de código. Así:
a, b, c = 'string', 15, True
en este caso a = ‘string’, b = 15 y c = True
Un concepto fundamental a conocer antes de utilizar estructuras
de control en Python, es vital saber el concepto de identación.
Estructuras de ¿Qué es la identación? En un lenguaje informático, la
identación es lo que la sangría al lenguaje humano escrito (a
control de flujo, nivel formal). Así como para el lenguaje formal, cuando uno
redacta una carta, debe respetar ciertas sangrías, los lenguajes
Condicionales e informáticos, requieren una identación. En Python es
Iterativas obligatoria, ya que de ella, dependerá su estructura.
Condicionales

 Las estructuras de control de flujo condicionales se refieren a aquellas que nos ayudan a determinar si
una o más condiciónes se cumple o no, de esta manera podemos manejar como un programa se comporta en
determinadas situaciones.

 Las 3 grandes estructuras condicionales que existen son: if (sí), elif (sino o si) y else (sino).
Estructura de IF – ELSE - ELIF

El interprete avanza de manera ordenada por cada condicion.

Primero revisa condicion”


if ”
If (Condición):
Primero revisa si se algoritmo
If (Condición): cumple la condicion if Elif(condicion):
algoritmo algoritmo Segundo las condiciones
Else: “elif”
Elif(condicion):
algoritmo Si la condicion en if no se algoritmo
cumple se ejecuta “else” Else:
Finalmente si ninguna
algoritmo condicion se alcanza se
ejecuta el algoritmo en
“else”
Operadores
relacionales o
comparación

Los operadores relacionales son aquellos


que nos ayudan a evaluar si una
condición se cumple o no.
Operadores
lógicos

Estos nos ayudan a evaluar si se cumple


más de una condición o no.
Anidación de condiciones

Una sentencia condicional puede contener a su vez otra sentencia condicional anidada, lo cual es equivalente a una
condición elif.

if condición_1:
if condición_1:
bloque 1
bloque 1
else:
elif condición_2:
if condición_2:
bloque 2
bloque 2
else:
else:
bloque 3
bloque 3
Iterativas

 Que es ser “iterable”? Un iterable es cualquier objeto de Python capaz de devolver a sus miembros uno a la
vez, permitiendo que se repita en un ciclo cualquiera.
 Las estructuras de control iterativas también conocidos como bucles o ciclos se refieren a aquellas que nos
permiten ejecutar un bloque de código múltiples veces hasta que se cumpla una condición especifica.

Existen 2 bucles: While y For


Sintaxis de bucles

For While
i=0
For numeros in [0,1,2]:
x = [1,2,3]
print(numeros)
while i <= 2:
print (x[i])
i= i +1
Bucles anidados

Aunque en Python no es
Al bucle que se encuentra
Se habla de bucles anidados Los bucles pueden tener necesario, se recomienda que
dentro del otro se le puede
cuando un bucle se encuentra en cualquier nivel de anidamiento los nombres de las variables de
denominar bucle interior o bucle
el bloque de instrucciones de (un bucle dentro de otro bucle control de los bucles anidados
interno. El otro bucle sería el
otro bucle. dentro de un tercero, etc.). no coincidan, para evitar
bucle exterior o bucle externo.
ambigüedades.
Ejemplos prácticos. IF-ELSE-ELIF
FOR
WHILE
Lab #1 OPERADORES

También podría gustarte