Computing">
[Go to site: main page, start]

0% encontró este documento útil (0 votos)
4 vistas26 páginas

Manual. Python - Modulo1

El documento proporciona una introducción a Python, cubriendo conceptos básicos como lenguajes de programación, algoritmos, variables, y estructuras de control. Se destacan las características de Python como un lenguaje interpretado y de alto nivel, así como la importancia de la sintaxis, la indentación, y el uso de variables. Además, se abordan herramientas necesarias para programar en Python y se presentan ejemplos de estructuras de datos como listas.

Cargado por

CA AL
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
4 vistas26 páginas

Manual. Python - Modulo1

El documento proporciona una introducción a Python, cubriendo conceptos básicos como lenguajes de programación, algoritmos, variables, y estructuras de control. Se destacan las características de Python como un lenguaje interpretado y de alto nivel, así como la importancia de la sintaxis, la indentación, y el uso de variables. Además, se abordan herramientas necesarias para programar en Python y se presentan ejemplos de estructuras de datos como listas.

Cargado por

CA AL
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Capítulo 0: Conceptos Previos Antes de

Comenzar con Python


Antes de adentrarnos en la sintaxis y las funcionalidades de Python, es importante
repasar algunos conceptos fundamentales de la programación y del entorno en el que
vamos a trabajar.

Este capítulo introductorio tiene como objetivo brindarte las bases necesarias para
comprender mejor los temas que se desarrollarán en las primeras secciones del manual.

1. ¿Qué es un Lenguaje de Programación?


Un lenguaje de programación es un conjunto de instrucciones y reglas que permiten a
las personas comunicarse con una computadora. Gracias a estos lenguajes, podemos
indicarle a una máquina qué tareas realizar, cómo procesar datos y cómo mostrar
resultados.

Python es un lenguaje:

 Interpretado: No es necesario compilar el programa completo antes de


ejecutarlo. El código se lee y ejecuta línea por línea, lo que facilita las pruebas y
la corrección de errores.
 De alto nivel: Su sintaxis es sencilla y cercana al lenguaje humano, lo que lo
hace accesible incluso para principiantes.
 Multipropósito: Puede aplicarse en múltiples áreas:
o Desarrollo web
o Análisis de datos
o Inteligencia artificial
o Automatización de tareas
o Administración de sistemas

Esta combinación hace que Python sea una excelente elección tanto para quienes se
inician en la programación como para profesionales que desarrollan proyectos
complejos de forma rápida y eficiente.

2. Algoritmos y Lógica de Programación


Un algoritmo es un conjunto ordenado y finito de pasos que se deben seguir para
resolver un problema o realizar una tarea. En programación, diseñamos algoritmos para
que una computadora ejecute acciones de manera precisa y repetible.

Ejemplo de algoritmo para saludar a un usuario:

1. Solicitar su nombre
2. Guardar el nombre en una variable
3. Mostrar un mensaje que incluya ese nombre
Este proceso de descomponer un problema en pasos simples y claros es la esencia de la
programación. Cuanto mejor diseñemos un algoritmo, más fácil será convertirlo en
código Python y más comprensible será para otros programadores.

3. Elementos Básicos de un Programa


Todo programa, incluso el más simple, combina tres componentes fundamentales:

 Datos: Información con la que trabaja el programa (números, textos, valores de


verdad).
 Operaciones: Acciones que transforman o manipulan los datos (sumar,
concatenar, comparar).
 Estructuras de control: Reglas que determinan el orden y las condiciones de
ejecución (condicionales como if, else; bucles como for, while).

Comprender cómo interactúan estos elementos es clave para crear programas eficientes
y fáciles de mantener.

4. Variables y Memoria
Una variable es un espacio reservado en la memoria del ordenador donde se guarda un
valor que puede cambiar durante la ejecución del programa. Piensa en una variable
como una etiqueta colocada sobre un “cajón” donde guardamos datos para usarlos más
adelante.

En Python, no es necesario declarar el tipo de dato de la variable; el intérprete lo detecta


automáticamente según el valor asignado.

Ejemplos:

python
nombre = "Ana" # Cadena de texto
edad = 20 # Número entero
altura = 1.65 # Número decimal

El valor de una variable puede cambiar en cualquier momento del programa,


simplemente asignándole un nuevo dato.

5. Herramientas Necesarias
Para escribir y ejecutar código Python necesitarás:

Intérprete de Python

 Es el software que lee y ejecuta tu código.


 Puedes instalarlo desde la página oficial de Python o usar entornos que ya lo
incluyan.

Editor de Código o IDE (Entorno de Desarrollo Integrado)


 Herramientas recomendadas:
o Visual Studio Code
o PyCharm
o Sublime Text
o Bloc de notas (opcional)
 Ventajas de un IDE:
o Resaltado de sintaxis
o Autocompletado
o Depuración

Plataformas en Línea (Opcional)

 Sitios como:
o Replit
o Jupyter Notebook
o Google Colab
 Permiten programar directamente desde el navegador sin instalar nada.
 Muy útiles para aprender y probar código rápidamente.

Tener un entorno de trabajo correctamente configurado te permitirá concentrarte en


aprender Python sin preocuparte por problemas técnicos.

1. Conceptos Básicos de la Sintaxis en


Python
Indentación
En Python, la indentación (espacios o tabulaciones al inicio de una línea) se utiliza para
delimitar bloques de código. A diferencia de otros lenguajes que emplean llaves {} o
palabras clave, Python determina el alcance de las instrucciones mediante la
indentación.

Ejemplo:

python
if condition:
# Bloque de código si la condición es verdadera
instrucción1
instrucción2
else:
# Bloque de código si la condición es falsa
instrucción3
instrucción4
🔸 Importante: Es fundamental mantener una indentación consistente en todo el código
para evitar errores de sintaxis.

Comentarios
Los comentarios son líneas de texto que el intérprete de Python ignora. Se utilizan para
explicar, documentar o aclarar el propósito del código.

 Comentario de una sola línea: comienza con #


 Comentario de varias líneas: se encierra entre triples comillas """ ... """ o
''' ... '''

Ejemplo:

python
# Este es un comentario de una sola línea

"""
Este es un comentario
de varias líneas
"""

Sensibilidad a Mayúsculas y Minúsculas


Python distingue entre mayúsculas y minúsculas. Por lo tanto, las siguientes variables
son diferentes:

 variable
 Variable
 VARIABLE

Punto y Coma
A diferencia de otros lenguajes, Python no requiere el uso de punto y coma (;) al final
de cada instrucción. Sin embargo, si deseas escribir varias instrucciones en una sola
línea, puedes separarlas con punto y coma.

Ejemplo:

python
instruccion1; instruccion2; instruccion3
print("Hola"); print("mundo")

Uso de Paréntesis
Los paréntesis se utilizan para:

 Agrupar expresiones
 Definir funciones
 Realizar llamadas a funciones
Ejemplo:

python
resultado = (a + b) * c

2. Fundamentos de Python
Tipos de Datos Básicos
Los tipos de datos básicos son las categorías en las que se clasifican los valores
utilizados en los programas. Comprenderlos es esencial para trabajar con variables y
realizar operaciones correctamente.

Enteros (int)

Representan números sin parte decimal.

Ejemplo:

python
edad = 25
cantidad = 100

Flotantes (float)

Representan números con parte decimal, también llamados de punto flotante.

Ejemplo:

python
precio = 9.99
altura = 1.75

Cadenas de Texto (str)

Son secuencias de caracteres encerradas entre comillas simples '...' o dobles "...".
Se utilizan para representar texto.

Ejemplo:

python
nombre = "Juan"
mensaje = '¡Hola, mundo!'

Puedes incluir caracteres especiales usando el carácter de escape \.

Ejemplo:

python
variable = "\"hola\""

También puedes usar triple comilla para cadenas de varias líneas:

python
varias_lineas = '''Un texto largo
con varias líneas
que pueden extenderse'''

Booleanos (bool)

Representan valores de verdad: True (verdadero) y False (falso). Son muy utilizados
en condiciones y lógica de control.

Ejemplo:

python
es_mayor_de_edad = True
tiene_descuento = False

🔸 Ten en cuenta: Los valores booleanos en Python comienzan con mayúscula: True y
False.

2.1. Variables
Las variables son contenedores que nos permiten almacenar y manipular datos en
nuestros programas. Puedes pensar en una variable como una etiqueta que se asigna a
un valor específico.

En Python, no es necesario declarar el tipo de dato de una variable de antemano, ya que


el intérprete lo infiere automáticamente según el valor asignado.

Declaración y Asignación de Variables

Para declarar y asignar un valor a una variable en Python, se utiliza el operador de


asignación =. El nombre de la variable va a la izquierda del operador, y el valor que
deseas asignar va a la derecha.

Ejemplo:

python
nombre = "Juan"
edad = 25
altura = 1.75
es_estudiante = True

En este ejemplo, se han declarado y asignado valores a las variables nombre, edad,
altura y es_estudiante.

También puedes asignar el mismo valor a múltiples variables en una sola línea:
python
a = b = c = 10

Normas para Nombrar Variables

Al nombrar variables en Python, es importante seguir ciertas reglas para mantener un


código legible y evitar errores:

 Los nombres pueden contener letras (a-z, A-Z), números (0-9) y guiones bajos
( _)
 No pueden comenzar con un número
 Python distingue entre mayúsculas y minúsculas (nombre, Nombre y NOMBRE son
diferentes)
 No se pueden usar palabras clave reservadas como if, else, for, while, etc.

🔸 Buenas prácticas:

Se recomienda usar nombres descriptivos que indiquen claramente el propósito de la


variable.

Ejemplos válidos:

python
edad
nombre_completo
total_ventas
_contador

Ejemplos inválidos:

python
1edad # Comienza con un número
nombre-completo # Usa guion en lugar de guion bajo
if # Palabra clave reservada

🔹 Estilos comunes de nomenclatura:

 snake_case: total_ventas, nombre_completo


 camelCase: totalVentas, nombreCompleto
 PascalCase: TotalVentas, NombreCompleto

Ten en Cuenta

Elegir nombres descriptivos facilita la lectura y comprensión del código, tanto para ti
como para otros desarrolladores que trabajen en el mismo proyecto.

2.2. Operadores
Los operadores son símbolos especiales que permiten realizar operaciones sobre
variables y valores. Python ofrece varios tipos de operadores: aritméticos, de
comparación y lógicos.

Operadores Aritméticos

Se utilizan para realizar operaciones matemáticas básicas.

Operador Descripción Ejemplo Resultado


+ Suma a + b 13
- Resta a - b 7
* Multiplicación a * b 30
/ División (resultado flotante) a / b 3.333...
// División entera a // b 3
% Módulo (resto de la división) a % b 1
** Exponenciación a ** b 1000

Ejemplo:

python
a = 10
b = 3

suma = a + b
resta = a - b
multiplicacion = a * b
division = a / b
division_entera = a // b
modulo = a % b
exponenciacion = a ** b

Operadores de Comparación

Se utilizan para comparar valores y devuelven un resultado booleano (True o False).

Operador Descripción Ejemplo Resultado


== Igual a a == b False
!= Diferente de a != b True
> Mayor que a > b True
< Menor que a < b False
>= Mayor o igual que a >= b True
<= Menor o igual que a <= b False

Operadores Lógicos

Permiten combinar condiciones y evaluar múltiples expresiones.

Operador Descripción Ejemplo Resultado


and Verdadero si ambas condiciones lo son (a > 5) and (b < 5) True
Operador Descripción Ejemplo Resultado
or Verdadero si al menos una lo es (a > 15) or (b < 5) True
not Invierte el valor de la condición not (a > 5) False

Importante: Precedencia de Operadores

Python sigue reglas de precedencia, lo que determina el orden en que se evalúan las
operaciones:

1. Paréntesis (), Exponenciación **


2. Multiplicación *, División /, División entera //, Módulo %
3. Suma +, Resta -
4. Comparaciones (==, !=, >, <, >=, <=)
5. Lógicos (not, and, or)

3. Estructuras de Control
Las estructuras de control permiten modificar el flujo de ejecución de un programa.
En Python, las más comunes son las estructuras condicionales y los bucles, que nos
permiten tomar decisiones y repetir bloques de código según ciertas condiciones.

3.1. Estructuras Condicionales


Las estructuras condicionales permiten ejecutar diferentes bloques de código
dependiendo de si se cumple o no una condición.

if

Se utiliza para ejecutar un bloque de código si una condición es verdadera.

Sintaxis:

python
if condicion:
# Bloque de código si la condición es verdadera
instrucciones

Ejemplo:

python
edad = 18

if edad >= 18:


print("Eres mayor de edad.")
if-else

Permite ejecutar un bloque alternativo si la condición del if es falsa.

Ejemplo:

python
edad = 15

if edad >= 18:


print("Eres mayor de edad.")
else:
print("Eres menor de edad.")

if-elif-else

Permite evaluar múltiples condiciones en orden.

Ejemplo:

python
calificacion = 85

if calificacion >= 90:


print("Excelente")
elif calificacion >= 80:
print("Muy bueno")
elif calificacion >= 70:
print("Bueno")
else:
print("Necesita mejorar")

3.2. Bucles (Loops)


Los bucles permiten repetir un bloque de código varias veces. En Python, los más
utilizados son for y while.

for

Se utiliza para iterar sobre una secuencia (lista, tupla, cadena, etc.).

Sintaxis:

python
for variable in secuencia:
# Bloque de código a repetir
instrucciones

Ejemplo:

python
frutas = ["manzana", "banana", "naranja"]

for fruta in frutas:


print(fruta)

while

Se ejecuta mientras una condición sea verdadera.

Ejemplo:

python
contador = 0

while contador < 5:


print(contador)
contador += 1

🔸 Precaución: Si la condición nunca se vuelve falsa, el bucle se ejecutará


indefinidamente (bucle infinito).

3.3. Control de Bucles


Python ofrece instrucciones especiales para modificar el comportamiento de los bucles:

break

Interrumpe el bucle antes de que termine.

Ejemplo:

python
contador = 0

while True:
print(contador)
contador += 1

if contador == 5:
break

continue

Salta el resto del bloque y pasa a la siguiente iteración.

Ejemplo:

python
for i in range(10):
if i % 2 == 0:
continue
print(i)

pass

No realiza ninguna acción. Se usa como marcador de posición.


Ejemplo:

python
for i in range(5):
pass

Conclusión
Las estructuras de control son esenciales para construir programas dinámicos y
funcionales. Con las condicionales (if, if-else, if-elif-else) tomamos decisiones,
y con los bucles (for, while) repetimos tareas. Además, las instrucciones break,
continue y pass nos permiten tener un control más preciso sobre el flujo de ejecución.

4. Estructuras de Datos
4.1. Listas
Una lista es una estructura de datos mutable y ordenada que permite almacenar una
colección de elementos. Los elementos pueden ser de distintos tipos y se encierran entre
corchetes [], separados por comas.

Creación y Acceso

Para crear una lista:

python
frutas = ["manzana", "banana", "naranja"]

Para acceder a los elementos, se utiliza el índice entre corchetes. Los índices comienzan
desde 0.

python
print(frutas[0]) # Imprime "manzana"
print(frutas[1]) # Imprime "banana"
print(frutas[2]) # Imprime "naranja"

También se puede acceder desde el final utilizando índices negativos:

python
print(frutas[-1]) # Imprime "naranja"
print(frutas[-2]) # Imprime "banana"
print(frutas[-3]) # Imprime "manzana"

Métodos de Listas

Las listas tienen varios métodos incorporados para modificar sus elementos:

Método Descripción
append(elemento) Agrega un elemento al final de la lista
Método Descripción
insert(indice, elem) Inserta un elemento en una posición específica
remove(elemento) Elimina la primera aparición del elemento
pop(indice) Elimina y devuelve el elemento en la posición indicada
sort() Ordena los elementos en orden ascendente
reverse() Invierte el orden de los elementos

Ejemplo:

python
frutas = ["manzana", "banana", "naranja"]

[Link]("pera")
print(frutas) # ["manzana", "banana", "naranja", "pera"]

[Link](1, "uva")
print(frutas) # ["manzana", "uva", "banana", "naranja", "pera"]

[Link]("banana")
print(frutas) # ["manzana", "uva", "naranja", "pera"]

fruta_eliminada = [Link](2)
print(frutas) # ["manzana", "uva", "pera"]
print(fruta_eliminada) # "naranja"

[Link]()
print(frutas) # ["manzana", "pera", "uva"]

[Link]()
print(frutas) # ["uva", "pera", "manzana"]

Listas de Comprensión

Las listas de comprensión permiten crear nuevas listas de forma concisa, filtrando y
transformando elementos en una sola línea.

Sintaxis:

python
nueva_lista = [expresión for elemento in secuencia if condición]

Ejemplo:

python
numeros = [1, 2, 3, 4, 5]
cuadrados = [x ** 2 for x in numeros if x % 2 == 0]
print(cuadrados) # [4, 16]

En este ejemplo, se crea una lista con los cuadrados de los números pares de numeros.

4.2. Tuplas
Una tupla es una estructura de datos inmutable y ordenada que permite almacenar una
colección de elementos. Los elementos se encierran entre paréntesis () y se separan por
comas.

Creación y Acceso

Para crear una tupla:

python
punto = (3, 4)

Para acceder a sus elementos:

python
print(punto[0]) # Imprime 3
print(punto[1]) # Imprime 4

🔸 A diferencia de las listas, las tuplas no se pueden modificar una vez creadas. No se
pueden agregar, eliminar ni cambiar elementos.

Son útiles cuando se necesita almacenar datos que no deben cambiar, como coordenadas
o configuraciones.

Métodos de Tuplas

Aunque son inmutables, Python ofrece algunos métodos útiles:

Método / Función Descripción


count(elemento) Devuelve cuántas veces aparece un elemento
index(elemento) Devuelve el índice de la primera aparición del elemento
len(tupla) Devuelve la longitud de la tupla (función incorporada)

Ejemplo:

python
mi_tupla = (1, 2, 3, 2, 4, 2)

print(mi_tupla.index(2)) # 1
print(mi_tupla.index(2, 2)) # 3
print(mi_tupla.index(2, 2, 4)) # 3
5. Funciones
Las funciones son bloques de código reutilizables que encapsulan tareas específicas y
se pueden ejecutar cuando sea necesario. Nos ayudan a organizar el código, evitar la
repetición y hacer que nuestros programas sean más modulares y fáciles de mantener.

Definición y Llamada de Funciones


Para definir una función en Python se utiliza la palabra clave def, seguida del nombre
de la función y paréntesis. Opcionalmente, se pueden incluir parámetros dentro de los
paréntesis. El bloque de código se indenta después de los dos puntos :.

Ejemplo:

python
def saludo():
print("¡Hola, mundo!")

saludo() # Imprime "¡Hola, mundo!"

Parámetros y Argumentos
Las funciones pueden aceptar parámetros, que son valores que se pasan al momento de
llamar la función.

Ejemplo:

python
def saludo(nombre):
print(f"¡Hola, {nombre}!")

saludo("Juan") # ¡Hola, Juan!


saludo("María") # ¡Hola, María!

Valores de Retorno
Las funciones pueden devolver valores utilizando la palabra clave return. El valor
devuelto puede ser utilizado por el código que llama a la función.

Ejemplo:

python
def suma(a, b):
return a + b

resultado = suma(3, 4)
print(resultado) # 7

Funciones Anónimas (lambda)


Python permite definir funciones anónimas en una sola línea usando la palabra clave
lambda. Son útiles para funciones pequeñas y concisas.

Ejemplo:

python
cuadrado = lambda x: x ** 2
print(cuadrado(5)) # 25

Alcance de las Variables (Local vs. Global)


Las variables definidas dentro de una función tienen alcance local y solo son accesibles
dentro de esa función. Las variables definidas fuera de cualquier función tienen alcance
global.

Ejemplo:

python
def funcion():
variable_local = 10
print(variable_local)

variable_global = 20

def funcion2():
print(variable_global)

funcion() # 10
funcion2() # 20
print(variable_global) # 20
print(variable_local) # Error: variable no definida en este alcance

Documentación de Funciones (docstrings)


Es buena práctica documentar las funciones usando docstrings, que son cadenas de
texto encerradas entre triples comillas dobles """.

Ejemplo:

python
def area_rectangulo(base, altura):
"""
Calcula el área de un rectángulo.

Args:
base (float): La base del rectángulo.
altura (float): La altura del rectángulo.

Returns:
float: El área del rectángulo.
"""
return base * altura
Funciones con Número Variable de Argumentos
Python permite definir funciones que acepten un número variable de argumentos
usando el operador *.

Ejemplo:

python
def suma_variable(*numeros):
total = 0
for numero in numeros:
total += numero
return total

print(suma_variable(1, 2, 3)) # 6
print(suma_variable(4, 5, 6, 7)) # 22

Conclusión
Las funciones son una herramienta esencial en la programación. Permiten estructurar,
modularizar y reutilizar código de manera eficiente. Además de las funciones
definidas por el usuario, Python ofrece una amplia gama de funciones incorporadas
como print(), len(), range(), entre otras.

6. Manejo de Errores y Excepciones


Al escribir programas, es común encontrarse con situaciones inesperadas o errores
durante la ejecución. Python proporciona un mecanismo para manejar estos errores de
forma controlada mediante el manejo de excepciones. Esto permite capturar y tratar
errores específicos sin que el programa se detenga abruptamente.

6.1. Errores Comunes en Python


Antes de abordar el manejo de excepciones, veamos algunos errores frecuentes:

🔹 Error de Sintaxis (SyntaxError)

Ocurre cuando el código no sigue las reglas de sintaxis de Python.

python
def mi_funcion() # Falta el signo de dos puntos
print("Hola")

🔹 Error de Nombre (NameError)

Se produce al hacer referencia a una variable o función que no ha sido definida.

python
print(variable_no_definida)
🔹 Error de Tipo (TypeError)

Ocurre cuando se intenta realizar una operación entre tipos de datos incompatibles.

python
resultado = 5 + "10" # No se puede sumar un entero y una cadena

🔹 Error de Índice (IndexError)

Se genera al intentar acceder a un índice fuera del rango válido de una lista o secuencia.

python
lista = [1, 2, 3]
print(lista[3]) # El índice 3 no existe

Cuando ocurre un error, Python lanza una excepción y muestra un mensaje que incluye
el tipo de error y una descripción del problema.

6.2. Manejo de Excepciones


El manejo de excepciones permite capturar y tratar errores utilizando las instrucciones
try, except y opcionalmente finally.

🔸 try

El bloque try contiene el código que puede generar una excepción.

python
try:
resultado = 10 / 0
print(resultado)
except ZeroDivisionError:
print("Error: División por cero")

🔸 except

El bloque except especifica el tipo de excepción que se desea capturar. Se pueden usar
múltiples bloques except para manejar distintos tipos de errores.

python
try:
resultado = 10 / 0
except ZeroDivisionError:
print("Error: División por cero")
except ValueError:
print("Error: Valor inválido")

🔸 finally

El bloque finally se ejecuta siempre, haya ocurrido o no una excepción. Es útil para
liberar recursos o realizar tareas de limpieza.
python
try:
archivo = open("[Link]", "r")
# Operaciones con el archivo
except FileNotFoundError:
print("Error: Archivo no encontrado")
finally:
[Link]() # Se ejecuta siempre

6.3. Excepciones Personalizadas


Además de las excepciones incorporadas, se pueden crear excepciones personalizadas
para manejar situaciones específicas.

Para ello, se define una clase que herede de Exception o alguna de sus subclases.

Ejemplo básico usando Exception:

python
def funcion():
if condicion:
raise Exception("Descripción del error")

try:
funcion()
except Exception as e:
print(f"Error: {str(e)}")

En este ejemplo, se lanza una excepción personalizada con raise, y se captura usando
try-except.

Conclusión
El manejo de errores y excepciones es una parte fundamental de la programación en
Python. Permite tratar situaciones inesperadas de forma controlada, evitando que el
programa se bloquee.

 Los bloques try-except permiten capturar y manejar errores específicos.


 El bloque finally garantiza la ejecución de tareas críticas como cerrar archivos
o liberar recursos.
 Las excepciones personalizadas permiten definir comportamientos específicos
para tu aplicación.

7. Entradas y Salidas
En Python, la entrada y salida de datos nos permite interactuar con el usuario y
manipular archivos. Podemos solicitar información, mostrar resultados en pantalla y
leer o escribir datos en archivos externos.
7.1. Entrada de Datos del Usuario
Para obtener información del usuario durante la ejecución del programa, se utiliza la
función input(). Esta función muestra un mensaje en pantalla y espera que el usuario
ingrese un valor.

Ejemplo:

python
nombre = input("Ingresa tu nombre: ")
edad = input("Ingresa tu edad: ")

print("Hola, " + nombre + "!")


print("Tienes " + edad + " años.")

En este ejemplo:

 Se solicita al usuario que ingrese su nombre y edad.


 Los valores se almacenan en las variables nombre y edad.
 Luego se muestra un saludo personalizado en pantalla.

🔸 Importante

La función input() siempre devuelve una cadena de texto (str). Si se desea trabajar
con otros tipos de datos, como enteros o flotantes, es necesario realizar una conversión
explícita.

Ejemplo con conversión:

python
edad = int(input("Ingresa tu edad: "))

if edad >= 18:


print("Eres mayor de edad.")
else:
print("Eres menor de edad.")

En este caso:

 Se convierte el valor ingresado a entero usando int().


 Luego se evalúa la edad con una estructura condicional.

7.2. Salida de Datos


Para mostrar información en pantalla, se utiliza la función print(). Esta función puede
recibir uno o más argumentos y los muestra en la consola.

🔹 Formateo de Cadenas (f-strings)

Las f-strings permiten incrustar variables directamente dentro de una cadena de texto.
Se colocan las variables entre llaves {} y se antepone la letra f a la cadena.
Ejemplo:

python
nombre = "Juan"
edad = 25

print(f"Hola, mi nombre es {nombre} y tengo {edad} años.")

Este método es más limpio y legible que concatenar cadenas con el operador +.

7.3. Lectura y Escritura de Archivos


Python permite leer y escribir datos en archivos externos. Podemos abrir archivos en
diferentes modos:

 "r": lectura
 "w": escritura (sobrescribe el contenido)
 "a": anexar (agrega contenido al final)

Estas operaciones son fundamentales para guardar información, procesar datos y


generar reportes.

🔹 Lectura de Archivos

Para leer el contenido de un archivo, se utiliza la función open() en modo lectura ("r").
Luego, se puede usar el método read() para leer todo el contenido, o readlines()
para obtener una lista de líneas.

Ejemplo:

python
archivo = open("[Link]", "r")
contenido = [Link]()
print(contenido)
[Link]()

En este ejemplo:

 Se abre el archivo "[Link]" en modo lectura.


 Se lee todo el contenido y se almacena en la variable contenido.
 Se imprime el contenido en pantalla.
 Finalmente, se cierra el archivo con close().

🔹 Escritura de Archivos

Para escribir datos en un archivo, se abre en modo escritura ("w"). Si el archivo no


existe, se crea automáticamente. Si ya existe, su contenido se sobrescribe.

Ejemplo:
python
archivo = open("[Link]", "w")
[Link]("Hola, mundo!")
[Link]()

En este caso:

 Se abre el archivo en modo escritura.


 Se escribe la cadena "Hola, mundo!".
 Se cierra el archivo para guardar los cambios.

🔸 Importante

Es fundamental cerrar los archivos después de usarlos para liberar recursos del
sistema. Una forma más segura y recomendada de manejar archivos es utilizando la
instrucción with, que se encarga de cerrar el archivo automáticamente.

Ejemplo con with:

python
with open("[Link]", "r") as archivo:
contenido = [Link]()
print(contenido)

En este ejemplo:

 El archivo se abre en modo lectura.


 Se lee su contenido.
 Al finalizar el bloque with, el archivo se cierra automáticamente, incluso si
ocurre una excepción.

Conclusión

La entrada y salida de datos en Python brinda gran flexibilidad para interactuar con el
usuario y manipular archivos externos. Podés:

 Solicitar información con input()


 Mostrar resultados con print()
 Leer y escribir archivos con open(), read(), write(), y with

🔹 Recordá siempre manejar correctamente la apertura y cierre de archivos, y considerar


posibles excepciones que puedan surgir durante estas operaciones.

8. Importación y Creación de Módulos


En Python, un módulo es un archivo que contiene definiciones de funciones, clases y
variables que pueden ser utilizadas en otros programas. La importación de módulos
permite acceder a funcionalidades definidas en otros archivos y reutilizar código de
manera eficiente.

Además, podemos crear nuestros propios módulos para organizar y modularizar


nuestro código.

🔸 Ten en Cuenta

Python incluye una amplia biblioteca estándar de módulos que ofrecen


funcionalidades adicionales. Estos módulos están disponibles sin necesidad de
instalación adicional.

8.1. Importar Módulos


Para utilizar un módulo en nuestro programa, se debe importarlo con la instrucción
import. Podemos importar el módulo completo o funciones específicas.

Ejemplo: importar módulo completo

python
import math

resultado = [Link](25)
print(resultado) # 5.0

Ejemplo: importar función específica

python
from math import sqrt

resultado = sqrt(25)
print(resultado) # 5.0

En este caso, se importa solo la función sqrt() del módulo math, lo que permite usarla
directamente sin anteponer el nombre del módulo.

8.2. Módulos Estándar Comunes


La biblioteca estándar de Python incluye muchos módulos útiles. Algunos ejemplos:

python
import random
import datetime

numero_aleatorio = [Link](1, 10)


print(numero_aleatorio) # Número entero aleatorio entre 1 y 10

fecha_actual = [Link]()
print(fecha_actual) # Fecha y hora actual

🔹 Ejemplos de módulos estándar


Módulo Funcionalidad principal
math Funciones matemáticas como sqrt(), sin(), cos()
random Generación de números aleatorios: random(), randint()
datetime Manejo de fechas y horas: [Link](), [Link](),
[Link]()

Podés consultar la documentación oficial de Python para explorar más módulos y sus
funcionalidades.

8.3. Creación de Módulos Propios


Además de usar los módulos estándar, podemos crear nuestros propios módulos para
organizar y reutilizar código.

🔸 Crear y Usar Módulos Personalizados

Para crear un módulo personalizado:

1. Crear un archivo .py con el nombre deseado.


2. Definir funciones, clases o variables dentro del archivo.

Ejemplo: archivo mi_modulo.py

python
# mi_modulo.py

def saludar(nombre):
print(f"Hola, {nombre}!")

def calcular_suma(a, b):


return a + b

Uso en otro archivo:

python
import mi_modulo

mi_modulo.saludar("Juan") # Hola, Juan!


resultado = mi_modulo.calcular_suma(5, 3)
print(resultado) # 8

🔹 Organización del Código en Módulos

A medida que los programas crecen, es buena práctica dividir el código en módulos
según su funcionalidad. Esto mejora la legibilidad, facilita el mantenimiento y
promueve la reutilización.

Ejemplo:

python
# [Link]
def sumar(a, b):
return a + b

def restar(a, b):


return a - b
python
# [Link]
def imprimir_mensaje(mensaje):
print(mensaje)

def obtener_nombre_usuario():
return input("Ingresa tu nombre: ")

Programa principal:

python
import operaciones
import utilidades

resultado = [Link](5, 3)
utilidades.imprimir_mensaje(f"El resultado de la suma es:
{resultado}")

nombre = utilidades.obtener_nombre_usuario()
utilidades.imprimir_mensaje(f"Hola, {nombre}!")

Conclusión

Organizar el código en módulos permite:

 Reutilizar funciones en distintos programas


 Mantener el código limpio y estructurado
 Facilitar la colaboración y el mantenimiento

8.4. Paquetes
Un paquete es una forma de organizar módulos relacionados dentro de una estructura
jerárquica de directorios. Los paquetes permiten agrupar funcionalidades,
modularizar el código y evitar conflictos de nombres entre módulos.

🔹 Crear y Utilizar Paquetes

Para crear un paquete:

1. Crear un directorio con el nombre del paquete.


2. Agregar un archivo especial llamado __init__.py dentro del directorio.

Este archivo puede estar vacío o contener código de inicialización del paquete.

Ejemplo de estructura de paquete:

Código
mi_paquete/
__init__.py
[Link]
[Link]

🔸 Importar Módulos desde un Paquete

Una vez creado el paquete, se pueden importar sus módulos en otros programas:

python
from mi_paquete import modulo1, modulo2

modulo1.funcion1()
modulo2.funcion2()

En este ejemplo:

 Se importan los módulos modulo1 y modulo2 del paquete mi_paquete.


 Se utilizan las funciones definidas en cada módulo.

Beneficios de Usar Paquetes

Organizar el código en paquetes permite:

 Agrupar módulos relacionados por funcionalidad


 Reutilizar código en distintos proyectos
 Mantener un código más estructurado, legible y escalable

🔹 Buenas Prácticas

A medida que tus programas crecen, es recomendable dividir el código en paquetes


temáticos. Por ejemplo:

 Un paquete operaciones para funciones matemáticas


 Un paquete utilidades para funciones generales
 Un paquete interfaz para funciones relacionadas con la interacción con el
usuario

Conclusión

La importación y creación de módulos y paquetes en Python es clave para escribir


programas bien organizados y mantenibles. Explorá la biblioteca estándar de Python
para aprovechar los módulos ya disponibles, y no dudes en crear tus propios paquetes
para estructurar tu código de forma efectiva.

También podría gustarte