Lectura Ae 2

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 50

Módulo

Fundamentos de programación Python


Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Aprendizaje Esperado
Codificar un programa utilizando las instrucciones básicas de control de
flujo de acuerdo a la sintaxis del lenguaje Python para construir un
algoritmo.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

2. Instrucciones básicas del lenguaje Python

Contexto
Python es un lenguaje de programación ampliamente utilizado en el
análisis de datos debido a su simplicidad y versatilidad. El conocimiento
de Python básico es esencial para cualquier profesional que busque
trabajar en análisis de datos por varias razones. En primer lugar, Python
ofrece una sintaxis legible y amigable para los principiantes, lo que facilita
la escritura y comprensión del código. Además, Python tiene una
comunidad activa que ha desarrollado una amplia gama de bibliotecas y
herramientas especializadas para el análisis de datos, como NumPy,
Pandas, Matplotlib y Scikit-Learn. Estas bibliotecas permiten a los
analistas de datos manipular datos, realizar cálculos estadísticos, crear
visualizaciones y construir modelos de aprendizaje automático de manera
eficiente.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

VARIABLES Y TIPOS DE DATOS

Definición de variable
Una variable en programación es un contenedor o espacio de memoria que
se utiliza para almacenar datos que pueden variar o cambiar durante la
ejecución de un programa. Estos datos pueden representar valores
numéricos, texto, objetos u otra información relevante para el programa.
Las variables tienen nombres que se utilizan para hacer referencia a ellas
y acceder a su contenido.

En términos simples, puedes pensar en una variable como una etiqueta o


un nombre que se asocia con un valor o dato específico. Por ejemplo, en
Python, puedes declarar una variable llamada "edad" y asignarle un valor,
como 25. A medida que el programa se ejecuta, puedes acceder a la
variable "edad" para obtener o modificar su valor según sea necesario.

Las variables son esenciales en la programación, ya que permiten que los


programas almacenen y manipulen datos de manera dinámica. Esto es
especialmente útil para realizar cálculos, tomar decisiones condicionales
y gestionar información en general. Cada lenguaje de programación tiene
sus propias reglas y convenciones para declarar y usar variables, pero el
concepto fundamental de una variable como un contenedor de datos es
universal en la programación.

Variables y asignación
En Python podemos encontrar distintos tipos de datos con diferentes
características y clasificaciones, por ejemplo, números, textos o boléanos
(valores verdadero o falso), por nombrar los más simples, sin embargo,
todos tienen algo en común, se deben declarar y se les puede asignar
valores.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Para declarar una variable en Python, debemos darle un nombre y,


opcionalmente, un tipo de dato (recordemos que Python es un lenguaje
de tipado dinámico):

En este caso, la variable tiene el nombre “número” y el valor asignado (a


través del operador “=”) es 10.

Python, automáticamente entiende que la variable declarada será un


número (lo deduce del valor asignado), sin embargo, podemos forzar el
tipado de la variable incluyéndolo en la declaración:

Tipos de Datos
Los tipos de datos básicos de Python son los booleanos, los numéricos
(enteros, punto flotante y complejos) y las cadenas de caracteres.

Python también define otros tipos de datos, entre los que se encuentran:

● Secuencias: Los tipos list, tuple y range


● Mapas: El tipo dict
● Conjuntos: El tipo set
● Iteradores
● Clases
● Instancias
● Excepciones

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

A su vez, los tipos anteriores se pueden agrupar de diferente manera. Por


ejemplo: el tipo cadena de caracteres es una secuencia inmutable; las
listas, tuplas y diccionarios, entre otros, son contenedores y colecciones,
etc.

Tipos numéricos

Python define tres tipos de datos numéricos básicos: enteros, números de


punto flotante (simulará el conjunto de los números reales, pero ya
veremos que no es así del todo) y los números complejos.

Números enteros

El tipo de los números enteros es int. Este tipo de dato comprende el


conjunto de todos los números enteros, pero como dicho conjunto es
infinito, en Python el conjunto está limitado realmente por la capacidad
de la memoria disponible. No hay un límite de representación impuesto
por el lenguaje.

Pero tranquilidad, que para el 99% de los programas que desarrolles


tendrás suficiente con el subconjunto que puedes representar.

Un número de tipo int se crea a partir de un literal que representa un


número entero o bien como resultado de una expresión o una llamada a
una función.

Ejemplos:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Números de punto flotante

Puedes usar el tipo float sin problemas para representar cualquier número
real (siempre teniendo en cuenta que es una aproximación lo más precisa
posible). Por tanto, para longitudes, pesos, frecuencias, …, en los que
prácticamente es lo mismo 3,3 que 3,3000000000000003 el tipo float es
el más apropiado.

Ejemplo:

Cuando un número float vaya a ser usado por una persona, en lugar de por
el computador, puedes darle formato al número de la siguiente manera:

En este caso, la expresión muestra en pantalla el número r2, con dos


decimales.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Si llegamos a necesitar una mayor precisión a la hora de trabajar con los


números reales, Python tiene otros tipos de datos, como Decimal.

El tipo Decimal es ideal a la hora de trabajar, por ejemplo, con dinero o


tipos de interés. Este tipo de dato trunca la parte decimal del número para
ser más preciso.

OPERADORES Y EXPRESIONES

Operadores aritméticos
Los operadores son símbolos especiales que representan cómputos como
la suma y la multiplicación. Los valores que el operador usa se denominan
operandos.

Un operador aritmético toma dos operandos como entrada, realiza un


cálculo y devuelve el resultado.

Considera la expresión, “a = 2 + 3”. Aquí, 2 y 3 son los operandos y + es el


operador aritmético. El resultado de la operación se almacena en la
variable a.

OPERADOR DESCRIPCIÓN USO

+ Realiza Adición entre los 12 + 3 = 15


operandos

- Realiza Sustracción entre los 12 - 3 = 9


operandos

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

* Realiza Multiplicación entre los 12 * 3 = 36


operandos

/ Realiza División entre los 12 / 3 = 4


operandos

% Realiza un módulo entre los 16 % 3 = 1


operandos

** Realiza la potencia de los 12 ** 3 = 1728


operandos

// Realiza la división con resultado 18 // 5 = 3


de número entero

Para obtener el resultado en tipo flotante, uno de los operadores también


debe ser de tipo flotante.

Ejemplo:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Su salida sería:

Cabe destacar las operaciones RESTO ( % ) y CUOCIENTE ( // ), las cuales


no tienen símbolos propios en la matemática teórica.

El RESTO, es la operación que devuelve “lo que sobra” una división. Por
ejemplo, si dividimos 10 en 3, nos da 3 y sobra 1 (10 % 3 = 1). Si dividimos
15 en 6, nos da 2 y nos sobra 3 (15 % 6 = 3).

La operación CUOCIENTE es simplemente la división, sin tomar en cuenta


los decimales (o lo que es lo mismo, devuelve sólo la parte entera, sin el
resto), por ejemplo, 10 // 3 = 3 ó 15 // 6 = 2.

Operadores Relacionales
Un operador relacional se emplea para comparar y establecer la relación
entre ellos. Devuelve un valor booleano (true o false) basado en la
condición.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

OPERADOR DESCRIPCIÓN USO

Devuelve True si el operador de la


izquierda es mayor que el operador de la 12 > 3 devuelve True
>
derecha

Devuelve True si el operador de la


< 12 < 3 devuelve False
derecha es mayor que el operador de la
izquierda

12 == 3 devuelve
== Devuelve True si ambos operandos son
False
iguales

Devuelve True si el operador de la 12 >= 3 devuelve


>=
izquierda es mayor o igual que el True
operador de la derecha

Devuelve True si el operador de la 12 <= 3 devuelve


<=
derecha es mayor o igual que el False
operador de la izquierda

12 != 3 devuelve
!= Devuelve True si ambos operandos no
True
son iguales

Operadores Bit a Bit


Un operador bit a bit realiza operaciones en los operandos bit a bit.

Consideremos a = 2 (en binario = 10) y b = 3 (en binario = 11) para los


siguientes casos.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

OPERADOR DESCRIPCIÓN USO

Realiza bit a bit la operación AND en a & b = 2 (Binario: 10 &


&
los operandos 11 = 10)

Realiza bit a bit la operación OR en a | b = 3 (Binario: 10 | 11


|
los operandos = 11)

Realiza bit a bit la operación XOR en a ^ b = 1 (Binario: 10 ^ 11


^
los operandos = 01)

Realiza bit a bit la operación NOT bit ~a = -3 (Binario:


~ a bit. Invierte cada bit en el ~(00000010) =
operando (11111101))

Realiza un desplazamiento a la
derecha bit a bit. Desplaza los bits a >> b = 0 (Binario:
>> del operador de la izquierda a la 00000010 >> 00000011 =
derecha tantos bits como indica el 0)
operador de la derecha

a << b = 16 (Binario:
<< Realiza un desplazamiento a la 00000010 << 00000011 =
izquierda bit a bit. 00001000)

Operadores de Asignación
Se utiliza un operador de asignación para asignar valores a una variable.
Esto generalmente se combina con otros operadores (como aritmética, bit
a bit) donde la operación se realiza en los operadores y el resultado se
asigna al operando izquierdo.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Considera los siguientes ejemplos,

a = 18. Aquí = es un operador de asignación, y el resultado se almacena en


la variable a.

a + = 10. Aquí += es un operador de asignación, y el resultado se almacena


en la variable a. Es lo mismo que a = a + 10.

OPERADOR DESCRIPCIÓN

=
a = 5. El valor 5 es asignado a la variable a

+=
a += 5 es equivalente a a = a + 5

-=
a -= 5 es equivalente a a = a - 5

*=
a *= 3 es equivalente a a = a * 3

/=
a /= 3 es equivalente a a = a / 3

%=
a %= 3 es equivalente a a = a % 3

**=
a **= 3 es equivalente a a = a ** 3

//=
a //= 3 es equivalente a a = a // 3

&=
a &= 3 es equivalente a a = a & 3

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

|=
a |= 3 es equivalente a a = a | 3

^=
a ^= 3 es equivalente a a = a ^ 3

Operadores lógicos
Se utiliza un operador lógico para tomar una decisión basada en múltiples
condiciones. Los operadores lógicos utilizados en Python
son and, or y not

OPERADOR DESCRIPCIÓN USO

and a and b
Devuelve True si ambos operandos son True

or Devuelve True si alguno de los operandos es a or b


True

not Devuelve True si alguno de los operandos not a


False

Ejemplos:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Su salida:

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.

OPERADOR DESCRIPCIÓN

in Devuelve True si el valor especificado se encuentra en la


secuencia. En caso contrario devuelve False.

Not in Devuelve True si el valor no se encuentra en una secuencia;


False en caso contrario

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Ejemplo:

Salida:

Operadores de Texto
En Python existen muchos operadores de texto, algunos comparten la
misma sintaxis que los operadores matemáticos, pero su funcionamiento
es distinto:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Concatenar

Este término significa juntar cadenas de caracteres. El proceso de


concatenación se realiza mediante el operador de suma (+). Ten en cuenta
que debes marcar explícitamente dónde quieres los espacios en blanco y
colocarlos entre comillas.

Ejemplo:

Su salida:

Multiplicar

Si quieres varias copias de una cadena de caracteres utiliza el operador de


multiplicación (*). En este ejemplo, la cadena de caracteres mensaje lleva
el contenido “Hola” tres veces:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Salida:

Largo

Puedes determinar el número de caracteres en una cadena utilizando el


método len. Acuérdate que los espacios en blanco cuentan como un
carácter.

Ejemplo:

Salida:

Encontrar

Puedes buscar una sub-cadena en una cadena de caracteres utilizando el


método find y tu programa te indicará el índice de inicio de la misma. Ten
en mente que los índices están numerados de izquierda a derecha y que
el número en el que se comienza a contar la posición es el 0, no el 1.

Ejemplo:

Salida:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Estos son algunos ejemplos. Más adelante estudiaremos en profundidad


los String y sus métodos.

Conversiones de tipo
Hacer un cast o casting significa convertir un tipo de dato a otro.
Anteriormente hemos visto tipos como los int, string o float. Pues bien, es
posible convertir de un tipo a otro.

Pero, antes de nada, veamos los diferentes tipos de cast o conversión de


tipos que se pueden hacer. Existen dos:

● Conversión implícita: Es realizada automáticamente por Python.


Sucede cuando realizamos ciertas operaciones con dos tipos distintos.

● Conversión explícita: Es realizada expresamente por nosotros, como


por ejemplo convertir de str a int con str().

Conversión implícita

Esta conversión de tipos es realizada automáticamente por Python,


prácticamente sin que nos demos cuenta. Aun así, es importante saber lo
que pasa por debajo para evitar problemas futuros.

El ejemplo más sencillo donde podemos ver este comportamiento es el


siguiente:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Pero si sumamos a y b y almacenamos el resultado en a, podemos ver


como internamente Python ha convertido el int en float para poder
realizar la operación, y la variable resultante es float

Sin embargo, hay otros casos donde Python no es tan listo y no es capaz
de realizar la conversión. Si intentamos sumar un int a un string,
tendremos un error TypeError.

Conversión explícita

Por otro lado, podemos hacer conversiones entre tipos o cast de manera
explícita haciendo uso de diferentes funciones que nos proporciona
Python. Las más usadas son las siguientes:

● float(), str(), int(), list(), set()

● Y algunas otras como hex(), oct() y bin()

Convertir float a int

Para convertir de float a int debemos usar int(). Pero mucho cuidado, ya
que el tipo entero no puede almacenar decimales, por lo que perderemos
lo que haya después de la coma.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Ejemplo:

Convertir float a string

Podemos convertir un float a string con str(). Podemos ver en el siguiente


código como cambia el tipo de la variable “a” después de hacer el cast.

Convertir string a float

Podemos convertir un string a float usando float(). Es importante notar


que se usa el punto (.) como separador.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

El siguiente código daría un error, dado que, no se reconoce por defecto


como separador decimal.

Convertir string a int

Al igual que la conversión a float del caso anterior, podemos convertir de


string a int usando int().

Cuidado ya que no es posible convertir a int cualquier valor:

Convertir int a string

La conversión de int a string se puede realizar con str().

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

A diferencia de otras conversiones, esta puede hacerse siempre, ya que


cualquier valor entero que se nos ocurra poner en a, podrá ser convertido
a string.

Entrada y salida de datos

Una de las características más importantes de cualquier lenguaje de


programación es poder interactuar con el usuario.

Salida de Datos

Cómo sospecharás, debido a todos los ejemplos anteriores, el comando


más sencillo para mostrar datos en pantalla es print().

El comando print() en Python se utiliza para mostrar información en la


pantalla o en la salida estándar. Puedes usarlo para imprimir texto,
variables, resultados de cálculos y otros datos que desees visualizar
mientras ejecutas un programa.

Ejemplo Sintaxis básica:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Múltiples elementos separándolos por coma:

Además de imprimir texto y variables, puedes formatear la salida


utilizando el método str.format() o las f-strings para crear una salida más
legible (notar la f al principio del texto en f-string):

También puedes especificar un separador entre los elementos utilizando


el parámetro sep (por defecto es un espacio) y un carácter final con el
parámetro end (por defecto es un salto de línea):

Impresión en archivos

Puedes redirigir la salida de print() a un archivo en lugar de la consola.


Para hacerlo, abre un archivo en modo escritura y pasa el objeto del
archivo como argumento al print().

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Por ejemplo:

Entrada de datos

La entrada de datos en Python generalmente se realiza a través de la


función input(), que permite que los usuarios ingresen datos desde el
teclado.

La función input() se utiliza para solicitar datos al usuario desde la


consola. Devuelve una cadena de texto (string) que representa la entrada
del usuario.

Ejemplo:

En este ejemplo, el mensaje entre comillas se mostrará en la consola, y el


programa esperará a que el usuario ingrese datos. Los datos ingresados
por el usuario se asignarán a la variable nombre.

Ten en cuenta que la entrada se considera siempre como una cadena de


texto (string).

Salida:

Si necesitas trabajar con tipos de datos diferentes, como números enteros


o números de punto flotante, debes realizar una conversión explícita.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Por ejemplo:

Es importante tener en cuenta que la función input() puede generar una


excepción ValueError si el usuario ingresa datos que no se pueden
convertir al tipo deseado. Para manejar esta excepción, puedes utilizar
bloques try y except.

CONTROL DE FLUJO

Diagrama de flujo
Un programa o script de Python es un conjunto de instrucciones
analizadas y ejecutadas por el intérprete de arriba hacia abajo y de
izquierda a derecha. Cuando todas las instrucciones se han ejecutado, el
programa termina. No obstante, contamos con herramientas para alterar
el flujo natural del programa: hacer que se saltee una porción de código
según se cumpla tal o cual condición, repetir un conjunto de instrucciones,
etc.

Un diagrama de flujo es un tipo de diagrama que explica visualmente un


proceso o flujo de trabajo, por lo que también se llama flujograma.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Utilizando símbolos y definiciones estandarizadas, los diagramas de flujo


describen visualmente los diferentes pasos y decisiones de un proceso.

Son populares en muchos campos desde hace años, desde la ingeniería y


la educación hasta la programación informática y la gestión de proyectos.

Sirven para comunicar desde los procesos más sencillos hasta los más
complejos, por lo que son increíblemente dinámicos y versátiles. Al mirar
un diagrama de flujo, el espectador debe poder obtener una visión general
de un proceso con facilidad.

Normalmente, se dibuja utilizando varios símbolos, cada uno de los cuales


representa un paso diferente dentro de una secuencia o proceso. Para
crear un diagrama de flujo solemos utilizar diversos elementos y formas,
como: acciones, materiales, servicios, entradas y salidas. Si tienes que
tomar una decisión y no estás seguro del proceso, su uso puede simplificar
mucho la toma de decisiones.

En programación, se utilizan para representar las instrucciones que se


ejecutan en el código, tomando en cuenta las decisiones, datos
almacenados, cálculos y dirección del flujo del programa.

Su simbología más básica está dada por:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Algoritmo para leer dos números y entregar la suma

Algoritmo para leer un año y determinar si es bisiesto o no

En general, usaremos diagramas de flujo para “bosquejar” nuestros


programas y entender de una manera gráfica su comportamiento.

Instrucciones Condicionales (If – Else –Elif)


Las estructuras de control condicionales, son aquellas que nos permiten
evaluar si una o más condiciones se cumplen, para decir qué acción vamos
a ejecutar. La evaluación de condiciones, solo puede arrojar 1 de 2
resultados: verdadero o falso (True o False).

En la vida diaria, actuamos de acuerdo a la evaluación de condiciones, de


manera mucho más frecuente de lo que en realidad creemos: Si el
semáforo está en verde, cruzar la calle. Sino, esperar a que el semáforo se
ponga en verde. A veces, también evaluamos más de una condición para
Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

ejecutar una determinada acción: Si llega la factura de la luz y tengo


dinero, pagar la boleta.

Para describir la evaluación a realizar sobre una condición, se utilizan


operadores relacionales (o de comparación).

Y para evaluar más de una condición simultáneamente, se utilizan


operadores lógicos.

Su representación de diagrama de flujo sería:

Las estructuras de control de flujo condicionales, se definen mediante el


uso de tres palabras claves reservadas, del lenguaje: if (si), elif (sino, si) y
else (sino).

Bloque if, sintaxis básica:

Ejemplo simple:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

En este código vemos que usamos un operador de comparación (>=). Este


operador nos devolverá verdadero o falso según se cumpla que edad sea
mayor o igual a 18. En el caso que lo sea, se ejecutará la siguiente
instrucción (print), de lo contrario, no se ejecutará nada.

Notar, además, la indentación de la instrucción print, que, en este caso, al


estar más a la derecha que el if, significa que está dentro de su bloque (o
sea, pertenece al if)

Bloque else

Puedes proporcionar un bloque else que se ejecutará si la condición en el


if es falsa:

En este caso, cuando la comparación sea falsa, se ejecutará el segundo


print (el que pertenece al bloque else)

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Bloques elif:

Puedes utilizar bloques elif para manejar múltiples condiciones de manera


secuencial. Esto es útil cuando tienes más de dos opciones:

Su equivalente en diagrama de flujo:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Instrucción Cíclicas While


En Python, el bucle while es una estructura de control que te permite
ejecutar un bloque de código repetidamente mientras una condición
específica se evalúe como verdadera (True). El bucle while se utiliza para
la repetición basada en una condición, y su sintaxis básica es la siguiente:

Su diagrama de flujo:

¿Cómo funciona?

● Evaluación de la condición: La condición en el bucle while se evalúa


antes de que se ejecute el bloque de código. Si la condición es
verdadera, el bloque se ejecuta. Si la condición es falsa, el bloque se
omite y el programa sale del bucle.

● Bucle infinito: Si no se modifica la condición o si la condición siempre


es verdadera, el bucle while se convertirá en un bucle infinito, lo que
puede hacer que el programa se ejecute indefinidamente. Debes tener

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

cuidado para evitar bucles infinitos y asegurarte de que la condición


se modifique de alguna manera durante la ejecución del bucle.

● Modificación de la condición: Para evitar bucles infinitos, debes


modificar la condición en algún momento dentro del bloque de código
del while. Esto generalmente implica cambiar el valor de una variable
utilizada en la condición.

● El bucle while es útil cuando no sabes cuántas veces se ejecutará el


bloque de código por adelantado. Puedes utilizarlo para realizar tareas
repetitivas hasta que se cumpla una condición de salida.

● Palabras clave break y continue: Puedes utilizar la palabra clave break


para salir inmediatamente de un bucle while antes de que se complete,
y la palabra clave continue para saltar a la siguiente iteración del bucle
sin ejecutar el código restante en esa iteración.

Ejemplo:

Ejemplo usando break:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Ejemplo usando continue:

Otro ejemplo:

Salida:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Ejercicio guiado ‘Tipos de datos’: Supongamos que estás construyendo una


aplicación para una biblioteca que permite a los usuarios ingresar los títulos
de los libros que desean leer. El programa debe permitir a los usuarios
ingresar tantos libros como deseen hasta que escriban "STOP".

Comienza por crear una lista vacía que almacenará los títulos de los libros.

lista_de_libros = []

Implementa un ciclo while que continuará solicitando al usuario que ingrese


un título de libro hasta que el usuario ingrese la palabra "STOP".

while True:

titulo = input("Ingresa el título de un libro o escribe


'STOP' para finalizar: ")

if titulo == "STOP":

break

lista_de_libros.append(titulo)

En este ciclo, while True crea un bucle infinito, que solo se interrumpe si se
cumple la condición de que título sea igual a "STOP".

input() es una función que recoge la entrada del usuario y la almacena en la


variable título.

lista_de_libros.append(titulo) agrega el título ingresado al final de la lista


lista_de_libros.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Una vez que el ciclo while se detenga, imprime la lista completa de libros
para mostrar al usuario.

print("\nLista de libros para leer:")

for libro in lista_de_libros:

print(libro)

Este bloque de código recorre la lista_de_libros e imprime cada elemento.

Para asegurarte de que el ciclo while y la manipulación de la lista se han


realizado correctamente, verifica que todos los títulos ingresados por el
usuario, excepto "STOP", estén presentes en la lista_de_libros.

Instrucción cíclica For


En Python, el bucle for es una estructura de control utilizada para iterar
sobre una secuencia (como una lista, tupla, cadena, o rango) o cualquier
objeto iterable. El bucle for permite recorrer los elementos de la secuencia
uno por uno y realizar una serie de operaciones en cada elemento.

Su sintaxis básica:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Donde:

variable es una variable temporal que toma el valor de cada elemento de


la secuencia (lista, cadena , etc..) en cada iteración del bucle.

secuencia es la secuencia de elementos sobre la cual se itera.

Su diagrama de flujo:

Ejemplo:

En este ejemplo, el bucle for recorre la lista nombres e imprime cada


nombre en la lista.

En la primera iteración, la variable nombre tendrá el valor “Alice”, en la


segunda iteración “Bob” y en la tercera “Charlie”

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Uso de range() en un bucle for:

Puedes utilizar la función range() para generar una secuencia de números


que se itera en un bucle for. range() genera una secuencia de números
enteros desde un valor inicial hasta un valor final (exclusivo) con un paso
opcional. Por ejemplo:

Uso de enumerate():

La función enumerate() se utiliza para obtener tanto el valor como el


índice de cada elemento en una secuencia. Es útil cuando necesitas
acceder tanto al valor como al índice en una lista o tupla:

Uso de break y continue en un bucle for:

Puedes utilizar las palabras clave break y continue en un bucle for para
salir del bucle o saltar a la siguiente iteración, respectivamente, de manera
similar a como se utilizan en un bucle while.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Ejercicio guiado ‘Tipos de datos’: Crearemos y luego modificaremos un


Diccionario en Python.

Comienza declarando un diccionario vacío. En Python, esto se hace


asignando unas llaves sin contenido a una variable.

mi_diccionario = {}

Antes de proceder, decide qué tipo de datos quieres almacenar en tu


diccionario. Por ejemplo, podrías querer asociar nombres de frutas con su
color correspondiente.

Utiliza un ciclo for para iterar sobre una secuencia de elementos que deseas
agregar al diccionario. En cada iteración del ciclo, agregarás un par clave-
valor al diccionario.

frutas = ['manzana', 'banana', 'cereza']

colores = ['rojo', 'amarillo', 'rojo']

for i in range(len(frutas)):

mi_diccionario[frutas[i]] = colores[i]

En el código anterior, range(len(frutas)) crea una secuencia de índices (0, 1,


2) que corresponde a los índices de los elementos en la lista frutas.

frutas[i] obtiene el elemento de la lista frutas en la posición i, que actuará


como la clave.

colores[i] obtiene el elemento de la lista colores en la posición i, que será el


valor asociado con esa clave.

Después de poblar el diccionario, imprímelo para ver el resultado final.

print(mi_diccionario)

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Buenas prácticas en programación


Las buenas prácticas en programación son pautas y enfoques que los
programadores siguen para escribir código de alta calidad, fácil de
mantener, eficiente y libre de errores. Estas prácticas no solo hacen que
tu código sea más legible y robusto, sino que también facilitan la
colaboración en proyectos de programación.

Algunas de los puntos sugeridos:

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

PEP 8

Significa "Python Enhancement Proposal 8," es una guía de estilo para


escribir código en el lenguaje de programación Python. Fue escrito por
Guido van Rossum, el creador de Python, y es ampliamente aceptado por
la comunidad de desarrolladores de Python como una referencia
importante para mantener un código Python legible y consistente.

Algunos aspectos de PEP 8:

Indentación: Utiliza espacios en lugar de tabulaciones para la indentación.


Se recomiendan cuatro espacios por nivel de indentación. Esto asegura
que el código se vea consistente en diferentes editores y sistemas.

De preferencia, es mejor dejar la indentación automática como tarea en


un formateador de código (por ejemplo prettier en VSCode)

Longitud de línea: Limita las líneas de código a 79 caracteres o menos


para el código y 72 caracteres o menos para comentarios y documentos
de cadena. Si una línea debe ser dividida, utiliza la barra invertida \ para
hacerlo.

Espacios en blanco: Utiliza un espacio después de comas y dos espacios


antes y después de operadores. Evita espacios en blanco al final de las
líneas.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Ejemplo sin espacios:

Ejemplo con espacios:

Comentarios: Agrega comentarios para explicar el código cuando sea


necesario. Los comentarios deben ser claros y concisos. Se recomienda el
uso de comentarios en estilo docstring para documentar funciones y
módulos.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Nombres de variables: Utiliza nombres descriptivos para tus variables,


funciones y clases. Evita nombres de variable de una sola letra, a menos
que se utilicen como contadores en bucles.

Convenciones de nombres: Sigue las convenciones de nombres, como


CamelCase para clases y snake_case para funciones y variables. Los
nombres de clases deben ser sustantivos en singular o plurales.

● Camel Case: En Camel Case, las palabras se escriben sin espacios y


cada palabra después de la primera comienza con mayúscula, sin
separadores adicionales. En Python, se utiliza principalmente para
nombrar clases y métodos.

● Snake Case: En Snake Case, las palabras se escriben en minúsculas y


se separan por guiones bajos ("_"). Es comúnmente utilizado en Python
para nombrar variables, funciones y módulos.

Importaciones: Importa módulos en líneas separadas y, cuando sea


posible, evita importar módulos completos. En su lugar, importa solo las
funciones o clases necesarias desde un módulo.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Espaciado en funciones y métodos: Agrega dos líneas en blanco antes de


definir una función o una clase. Dentro de una función, agrega una línea
en blanco después de las instrucciones de importación y entre las
secciones de código relacionadas.

Documentación: Proporciona documentación clara para funciones, clases


y módulos utilizando comentarios y cadenas de documentación
(docstrings). Describe el propósito y el comportamiento de las funciones y
clases.

Espaciado vertical: Utiliza espaciado vertical de manera consistente para


que el código sea más legible. Evita espacios en blanco excesivos, pero no
escatimes en el espaciado cuando sea necesario.

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Referencias
● Miro: Diagramas de flujo
https://miro.com/es/diagrama-de-flujo/que-es-diagrama-de-flujo/

● Código fuente: Operadores en python


https://www.codigofuente.org/operadores-en-python/

● Jarroba: Curso de python – estructuras de control de flujo


https://jarroba.com/curso-de-python-4-estructuras-de-control-de-
flujo/

● Jota2Logo: el tipo Str y operaciones más comunes


https://j2logo.com/python/tutorial/tipo-str-python/

● Recursos Python: Guía de estilo


https://recursospython.com/pep8es.pdf

● YouTube – ComenaTec: Conceptos básicos de python (lista de


reproducción)
https://www.youtube.com/watch?v=Tb4ozM308Vw&list=PLRFOqDrY
-6ntJPOsLMEnKzNDJrO6EIQbN&ab_channel=ColmenaTEC

Módulo
Fundamentos de Programación Python
Aprendizaje Esperado
Instrucciones básicas del lenguaje Python

Módulo
Fundamentos de Programación Python

También podría gustarte