Taller Python
Taller Python
Taller Python
Profesor
Sergio Gonzalez
Estructuras de Datos
Algoritmos y programas
Un programa es la implementación
Un algoritmo es una secuencia de pasos ordenados
práctica de un algoritmo
y bien definidos que se utilizan para resolver un
problema o realizar una tarea específica.
Estructuras de Datos
Algoritmos y programas
• Un algoritmo es un conjunto de pasos para
resolver un problema.
• Programa: Forma de implementar un
algoritmo en una computadora.
• Conjunto de instrucciones que interpreta el
procesador.
Estructuras de Datos
Algoritmos y programas
Estructuras de Datos
Codificación de un programa
Codificar significa traducir una serie de instrucciones, acciones o ideas en
un lenguaje de programación específico, para crear un programa de
computadora que pueda ejecutar esas instrucciones
Estructuras de Datos
Codificación de un programa
• Lenguaje maquina.
– 1111s y 0000s
Estructuras de Datos
Codificación de un programa
• Lenguaje maquina.
– 1111s y 0000s
• Lenguajes de programación de alto nivel.
– Texto similar a lenguaje humano
Estructuras de Datos
Traducción de un programa
• Editor de texto -> Programa fuente
• Programa traductor -> Texto a lenguaje
maquina
– Compilador - Montador (Linker)
• Ejecutable
– Interprete
• Realiza traducción
• Ejecuta directamente archivo fuente
• No genera ejecutable
Un lenguaje de programación es un lenguaje formal diseñado para
comunicar instrucciones a una computadora.
Estructuras de Datos
Lenguajes de programación
• Independientes de la maquina
• Similar a lenguaje humano
• Una sola instrucción equivale a varias
instrucciones de lenguaje maquina.
• Uso de variables, símbolos y términos usados
por los humanos
• No nos preocupamos por organización real en
memoria
Estructuras de Datos
Variables
• Contenedores de datos
• Ocupa espacio en RAM
• Nombre / Identificador
– Letras
– Números
– Caracteres especiales
• Tipo
Estructuras de Datos
Booleanos
• Boolean
• Lógica booleana
– Verdadero (True)
– Falso (False)
Estructuras de Datos
Caracteres
• Char
• Tabla de caracteres
– UNICODE
– ASCII
https://unicode-table.com/es/
https://elcodigoascii.com.ar/
Estructuras de Datos
Enteros
• Byte
• Short
• Int
• Long
Palabras reservadas
Estructuras de Datos
Expresiones / Operadores
• Operar con tipos de datos primitivos
– Asignación
– Aritméticos
– Condicionales
– Bit
Estructuras de Datos
Operadores de asignación
• Asignar valores en variables
–=
– <-
– ++ / --
– += / -=
Estructuras de Datos
Operadores Aritméticos
Operadores condicionales
Estructuras de Datos
Entrada / Salida
• Por pantalla / teclado
• Archivos
Estructuras de Datos
Estructura de programa
• Indentado
• Uso de ";"
• Sentencias entre llaves "{}"
Estructuras de Datos
Comentarios
• Líneas que no son ejecutadas
Estructuras de Datos
Estructura de un programa
• Declaración de variables
– Tipo
– Nombre
• Sentencias que implementan el algoritmo
Estructuras de Datos
Que es PYTHON?
Funcion "print"
print("texto a imprimir")
Estructuras de Datos
print("Hola mundo")
Estructuras de Datos
Declaración de variables
• Las variables no se declaran definiendo un
tipo
• El tipado es automatico y dinamico
• No se pueden realizar operaciones entre
variables de distinto tipo
• Existen funciones para el casteo:
– int()
– float()
– str()
Estructuras de Datos
Declaración de variables
nombreVariable = valor
Ejemplos:
dias = 2
decision = True
letra = "C"
radio = 25.63
dias = "lunes"
x , y , z = 34 , 25 , 12
x = y = "Hola"
Estructuras de Datos
Componentes de entorno de
•
desarrollo
Editor de texto y consola
• Facilidades en edicion
– Coloreado de Palabras según la sintaxis
– Indentación automática.
– Emparejamiento de parentesis y llaves.
– Introducción de comentarios
Estructuras de Datos
Estructuras de control
• Ya sabemos declarar variables, hacer
operaciones de distintos tipos entre ellas,
ingresar y sacar datos del programa
Estructuras de control
• Orden de realización de los pasos del algoritmo
– Selectivas
– Repetitivas
Estructuras de Datos
Alternativas simples
• Si – Entonces / If – then.
• Ejecuta una acción solo cuando se cumple una
condición
Estructuras de Datos
Alternativas simples
• Si – Entonces / If – then.
• En Python
Estructuras de Datos
Alternativas dobles
• Si – Entonces – si_no / If – then – else.
Estructuras de Datos
Alternativas múltiples
• Si – Entonces – si_no – entonces …
• If – then – else if – then …
Estructuras de Datos
Alternativas múltiples
• En Python no existe "switch - case"
Estructuras de Datos
Funciones - Procedimientos
• Muchas veces, partes del programa se repiten
• Es una buena practica, separar estas partes para
crear "Funciones" o "Procedimientos"
• Realizan tareas especificas
• El programa principal los "llama"
• Parámetros: Lista de valores de entrada
• Salidas
Estructuras de Datos
Definición
• Nombre identificatorio
• Parámetros: Lista de valores de entrada
• Salida
Estructuras de Datos
Invocación (Llamado)
• Utilizando su nombre y los parámetros entre
paréntesis, coincidiendo en cantidad y en tipo
con los de la definición
Estructuras de Datos
Estructuras de Datos
Ámbito de variables
• La ejecución de una función no debe afectar al
resto del programa
• Desarrollos independientes
• Variable local
– Declarada y utilizada solo dentro de la función
– Compartir nombres
– Valores no accesibles desde afuera
• Ámbito (scope): Parte del programa donde la
variable se reconoce como tal
Estructuras de Datos
Paso de parámetros
• Entrada (Argumentos): Desde el programa
principal a la función
• Salida: Resultados de la función, desde la
función al programa principal
• Entrada / Salida: Mismo parámetro para
mandar argumentos y devolver resultados.
• Tipos:
– Paso por valor
– Paso por referencia
Estructuras de Datos
Paso de parametros
Estructuras de Datos
Funciones en Python
• Tipos primitivos: Solo se permite paso por valor
• No se define tipo de salida
• No se definen tipos de parámetros
• Se pueden poner valores por defecto y asi poder
cambiar el orden de los parámetros
Estructuras de Datos
Funciones en Python
Estructuras de Datos
Funciones en Python
• Función suma de dos números enteros
Estructuras de Datos