Está en la página 1de 28

UNIDAD 1:

INTRODUCCIÓN Y
OPERADORES
Programación Orientada a Objetos
Christian Joani Contreras Flores
Marco Polo Pineda Ortelli
23/01/2024
Introducción al lenguaje
de programación
• Un programa hace que una computadora
sea usable. Sin un programa, una
computadora, incluso la más poderosa,
no es más que un objeto.
• Las computadoras contemporáneas solo
pueden evaluar los resultados de
operaciones muy fundamentales, como
sumar o dividir, pero pueden hacerlo
muy rápido y pueden repetir estas
acciones prácticamente cualquier
cantidad de veces.
2
Lenguajes naturales vs
lenguajes de programación
• Las personas también usan varios idiomas muy
diferentes, pero estos idiomas se crearon ellos
mismos. Además, todavía están evolucionando. Cada
día se crean nuevas palabras y desaparecen las
viejas. Estos lenguajes se llaman lenguajes
naturales.

• Las computadoras también tienen su propio


lenguaje, llamado lenguaje máquina, que es muy
rudimentario. Una computadora está desprovista de
cualquier rastro de inteligencia, solo responde a un
conjunto predeterminado de comandos conocidos a
los que se llama lista de instrucciones.

3
¿Qué compone a un lenguaje?

Una
Un alfabeto Un léxico Una sintaxis
semántica
• Un conjunto • Un conjunto • Un conjunto • Un conjunto
de símbolos de palabras de reglas de reglas que
utilizados que el utilizadas determinan si
para formar lenguaje para precisar una frase
palabras. ofrece a sus si una tiene sentido.
usuarios determinada
(diccionario). cadena de
palabras
forma una
oración
válida.

4
Lenguaje • Las listas de instrucciones son, de hecho, el alfabeto de
un lenguaje máquina. Este es el conjunto de símbolos
más simple y primario que podemos usar para dar
máquina vs. comandos a una computadora.

lenguaje de • Necesitamos un lenguaje en el que los humanos


puedan escribir sus programas y un lenguaje que las

alto nivel
computadoras pueden usar para ejecutar los
programas, uno que es mucho más complejo que el
lenguaje de máquina y, sin embargo, mucho más
simple que el lenguaje natural, estos lenguajes a
menudo se denominan lenguajes de programación
de alto nivel (código fuente).

5
Supongamos que has escrito con éxito un
programa. ¿Cómo persuadimos a la
computadora para que lo ejecute? Tienes que
Compilación vs. convertir tu programa en lenguaje de máquina.
Interpretación Hay dos formas diferentes de transformar un
programa de un lenguaje de programación de
alto nivel a un lenguaje de máquina:
6
Compilación vs. Interpretación
Compilación - el programa fuente se traduce una vez (sin
embargo, este acto debe repetirse cada vez que se modifique el
código fuente) al obtener un archivo que contiene el código
máquina (archivo ejecutable). Ahora se puede distribuir el
archivo en todo el mundo; el programa que realiza esta
traducción se llama compilador o traductor.

Interpretación - tú o cualquier usuario del código puede


traducir el programa fuente cada vez que se debe ejecutar.
El programa que realiza este tipo de transformación se
denomina intérprete, ya que interpreta el código cada vez
que se pretende ejecutar. También significa que no puedes
simplemente distribuir el código fuente tal cual, porque el
usuario final también necesita el intérprete para ejecutarlo.

7
¿Qué hace el
intérprete? • En primer lugar, el intérprete lee y
verifica si todas las líneas en el código
fuente son correctas (utilizando los
cuatro aspectos de un lenguaje).
• Si el compilador encuentra un error,
finaliza el trabajo inmediatamente. El
único resultado en este caso es un
mensaje de error.
• El intérprete te informará dónde se
encuentra el error y qué lo causó. Sin
embargo, estos mensajes pueden ser
engañosos, ya que el intérprete no
puede seguir tus intenciones exactas y
puede detectar errores a cierta
distancia de sus causas reales.
8
Compilación vs. Interpretación

Ventajas

COMPILACIÓN INTERPRETACIÓN
La ejecución del código traducido Puedes ejecutar el código tan
suele ser más rápida. pronto como lo completes; no hay fases
adicionales de traducción.
Solo el usuario debe tener el
compilador; el usuario final puede El código se almacena usando un
usar el código sin él. lenguaje de programación, no un
lenguaje máquina; esto significa que
El código traducido se almacena se puede ejecutar en computadoras
usando lenguaje máquina; como es que usan diferentes lenguajes
muy difícil de entender, es probable máquina; no compila tu código por
que tus propios inventos y trucos de separado para cada arquitectura
programación sigan siendo tu secreto. diferente.
9
Compilación vs. Interpretación

Desventajas

COMPILACIÓN INTERPRETACIÓN
La compilación en sí puede ser un No esperes que la interpretación
proceso que consume mucho tiempo; es acelere tu código a alta velocidad: tu
posible que no puedas ejecutar su código compartirá el poder de la
código inmediatamente después de computadora con el intérprete, por lo
realizar una modificación. que no puede ser realmente rápido.

Debes tener tantos compiladores Tanto tu como el usuario final


como plataformas de hardware donde deben tener el intérprete para ejecutar
desees que se ejecute tu código. tu código.

10
¿Qué es Python?
• Python es un lenguaje de
programación de alto nivel,
interpretado, orientado a
objetos y de uso
generalizado con semántica
dinámica, que se utiliza para
la programación de propósito
general.

11
Tipos de datos
Enteros
•Un entero es un número sin parte decimal. Puede ser positivo o negativo, o
incluso cero. (Ejemplo: -5, 0, 42)

Flotantes
•Un flotante es un número que incluye una parte fraccionaria. Puede ser
positivo, negativo o cero. (Ejemplo: 3.1416)

Cadenas
•Una cadena representa una secuencia de caracteres inmutables. Puedes pensar
en una cadena como texto, como palabras, frases o incluso un solo carácter.

Booleanos
•Un booleano es un tipo de dato que representa un valor de verdad, es decir,
una condición que puede ser verdadera (True) o falsa (False).

12
Variables
• Python ofrece "cajas" (o
"contenedores") especiales para
almacenar cualquier tipo de datos,
para poder guardar el valor y
emplearlo en algún otro momento
dentro del código.
• ¿Cuáles son los componentes o
elementos de una variable en
Python?

-Un nombre
-Un valor
Nota: si la variable contiene un
valor tipo cadena, se debe escribir el
texto entre comillas simples o
dobles.
13
Operaciones básicas de salida y
entrada
• Función print(): Es una función incorporada en Python que se utiliza para
mostrar información en la consola o en la salida estándar. Puedes pasarle
uno o más argumentos separados por comas.
Estructura:

print ( “ texto a mostrar en consola ” )


print ( variable_que_contiene_un_valor )
• Por ejemplo:

print("¡Hola, Mundo!")
saludo = "¡Hola, Mundo!"
print(saludo)

14
Operaciones básicas de salida y
entrada
• Función input(): Esta función permite al usuario ingresar datos desde el teclado
mientras el programa está en ejecución. El valor ingresado por el usuario se
devuelve como una cadena de caracteres y puede ser almacenado en una variable
para su posterior procesamiento.
Estructura:

variable = input ( )
variable = input ( “ Mensaje opcional ” )

variable = int o float ( input ( “ Mensaje opcional ” ) )

Ejemplo:
saludo = input(“ingresa un saludo”)
edad = int(input(“ingresa tu edad”))

15
Operadores básicos Se utiliza para sumar dos valores.

Se utiliza para restar el segundo valor del primero.

Se utiliza para multiplicar dos valores.

Los operadores básicos son


herramientas fundamentales Se utiliza para dividir el primer valor por el segundo.
Devuelve un flotante.
que se utilizan para realizar
operaciones matemáticas,
Se utiliza para dividir el primer valor por el segundo,
comparaciones lógicas y pero devuelve solo la parte entera del resultado.
manipulación de datos.
Devuelve el resto de la división del primer valor por
el segundo.

Se utiliza para elevar el primer valor a la potencia


del segundo.

16
Laboratorio
• Crea un programa que guarde las variables de:
 nombre (cadena)
 edad (entero)
 altura (flotante)
 tiene_auto (booleano)

• Muestre información inicial con un saludo e indique que se harán unos


cálculos
• Pedir al usuario que ingrese su nueva edad y su nueva altura de hace
2 años y se guarde en una nueva variable
• Realizar cálculos con operadores aritméticos
 Diferencia de edad
 Cambio de altura

• Mostrar los resultados


 Edad anterior, edad actual, diferencia de edad
 Altura anterior, altura actual, diferencia de altura
17
Comentarios • Quizás en algún momento será necesario poner
algunas palabras en el código dirigidas no a Python,
sino a las personas quienes estén leyendo el código con
el fin de explicarles cómo es que funciona, o tal vez
especificar el significado de las variables, también para
documentar quien es el autor del programa o en qué
fecha fue escrito.

• Un texto insertado en el programa el cual es, omitido


en la ejecución, es denominado un comentario.

Estructura:

18
Cadenas de formato (f-strings)
Las cadenas de formato consisten en cadenas de caracteres que pueden
insertar valores guardados en las variables del programa.
En Python las cadenas de formato tienen la siguiente estructura:
variable = valor
print ( f ” El valor de la variable es { variable } ” )
Uso de :.nf para
print ( f ” El valor de la variable es { variable:.3f } ” ) indicar número de
>> El valor de la variable es valor cifras significativas

>> El valor de la variable es valor con 3 cifras después del punto

19
Cadenas de formato (f-strings)
Las variables insertadas en las f-strings tienen modificadores que permiten
presentar de manera diferente el valor de la variable que se está llamando
entre las { }, como son: Uso de = para imprimir
variable = número_flotante el nombre de la variable
y el signo = antes del
print ( f ” El valor de { variable=} ” ) valor

print ( f ” El valor de { variable=:.3f } ” )


>> El valor de variable = número_flotante
>> El valor de variable = número_flotante_con_3_cifra_después_del_punto

20
Carácter de escape
• La barra invertida (\) tiene un significado muy especial cuando se usa dentro de
cadenas - se llama carácter de escape.

• La palabra escape debe entenderse específicamente - significa que la serie de


caracteres en la cadena se escapa por un momento (un momento muy breve) para
introducir una inclusión especial.

• La letra n colocada después de la barra invertida proviene de la palabra newline.

• Tanto la barra invertida como n forman un símbolo especial llamado un carácter de


nueva línea, que insta a la consola a iniciar una nueva línea de salida (\n).

21
print() con múltiples
argumentos posicionales
Se hace una invocación de la función print(), pero
contiene tres argumentos, todos ellos son cadenas y
están separados por comas, generando una cadena
concatenada que tiene espacios entre sus
argumentos.

Ejemplo:

print("La Witsi Witsi Araña" , "subió" , "a su


telaraña.")

>> La Witsi Witsi Araña subió a su telaraña.

Nota: La función print() se puede invocar sin


argumentos, genera un salto de línea en la consola
(\n).

22
Argumentos de
palabras clave:
end y sep
• Para usar los argumentos de palabras
clave, es necesario conocer algunas reglas:

1. Un argumento de palabra clave consta


de tres elementos: una palabra clave
se identifica el argumento (end o sep);
un signo de igual (=); y un valor
asignado a ese argumento;
2. Cualquier argumento de palabra clave
debe colocarse después del último
argumento posicional (esto es muy
importante)

end: determina ¿Qué pasará a la salida? una


vez que se imprimen todos sus argumentos
posicionales. Por defecto end = “\n”

sep: determina ¿Qué pasará entre cada


argumento posicional? Por defecto sep = “ ”
(espacio)
23
• Ejemplos:

print("Mi nombre es ", end="")

print("Monty Python.")
Uso de end
>> Mi nombre es Monty Python

print("Mi", "nombre", "es", "Monty", "Python.", sep="-")


Uso de sep
>> Mi-nombre-es-Monty-Python.

print("Mi", "nombre", "es", sep="_", end="*")

print("Monty", "Python.", sep="*", end="*\n") Uso de ambos argumentos

>> Mi_nombre_es*Monty*Python.*

24
Tarea:
1) Minimizar el número de

Ejemplo: Pino líneas en el código muestra y


obtener el mismo resultado.
2) Hacer que la figura sea el
print(" *") doble de grande,
print(" * *")
print(" * *") manteniendo las mismas
print(" * *") proporciones.
print("*** ***") 3) Duplica la flecha, colocando
print(" * *") ambas flechas una al lado de
print(" * *")
print(" *****") la otra.

2) 3)

1)

25
Concatenación
El signo de + (más), al ser aplicado a dos cadenas,
se convierte en un operador de concatenación

Estructura:

“string” + “string”

Ejemplo:

nombre = input("¿Me puedes dar tu nombre por


favor? ")

apellido = input("¿Me puedes dar tu apellido por


favor? ")

print(f "Gracias.\nTu nombre es " + nombre + " "


+ apellido + ".")

>>?

26
Replicación
El signo de * (asterisco), cuando es aplicado a una
cadena y a un número (o a un número y cadena)
se convierte en un operador de replicación:
Estructura:

“string” * número que se replica el string

Ejemplo:

"James" * 3 produce "JamesJamesJames"

3 * "an" produce "ananan"

5 * "2" (o "2" * 5) produce "22222" (no 10)

Tarea:
Realizar un programa que "dibuje”
un rectángulo, haciendo de la
concatenación y la replicación.

27
Laboratorio 2
• Implementar las mejoras de diseño de software que se han mostrado
durante la clase al código hecho en el laboratorio 1.

28

También podría gustarte