El resumen del texto según chatgpt es este:
Resumen General
Tipos de Datos
En Python, los tipos de datos incluyen cadenas (str
), bytes (bytes
), listas (list
), tuplas (tuple
), conjuntos (set
), conjuntos inmutables (frozenset
), diccionarios (dict
), enteros (int
), flotantes (float
), números complejos (complex
) y booleanos (bool
). Las cadenas y bytes son inmutables, mientras que listas, tuplas, conjuntos y diccionarios tienen características mutables o inmutables según el caso. Las listas permiten almacenar y modificar secuencias de elementos diversos, mientras que las tuplas son inmutables. Los conjuntos son colecciones desordenadas sin duplicados y los diccionarios almacenan pares clave-valor.
Condicionales
Las sentencias condicionales en Python permiten ejecutar bloques de código basados en la evaluación de condiciones. Usan if
para la condición principal, elif
para condiciones adicionales y else
para el bloque que se ejecuta si todas las condiciones previas son falsas. Las condiciones se evalúan secuencialmente:
verdadero = True
if verdadero:
print("Verdadero")
else:
print("Falso")
Bucles
Python ofrece los bucles for
y while
. El bucle for
recorre elementos de un iterable, ejecutando el código interno para cada elemento:
for i in ["a", "b", "c"]:
print(i)
El bucle while
ejecuta un bloque de código mientras una condición sea verdadera:
numero = 0
while numero < 10:
print(numero, end=" ")
numero += 1
Listas y Tuplas
Las listas se declaran con corchetes []
y son mutables. Las tuplas, con paréntesis ()
, son inmutables. Ambas pueden contener elementos de diferentes tipos. Ejemplos:
lista = ["abc", 42, 3.1415]
tupla = ("abc", 42, 3.1415)
Diccionarios
Los diccionarios se crean con llaves {}
y contienen pares clave-valor. Son mutables, permitiendo modificar sus valores. Las claves deben ser inmutables, como tuplas. Los valores pueden ser de cualquier tipo:
diccionario = {"cadena": "abc", "numero": 42}
diccionario["cadena"] = "xyz"
Sentencia Match-Case
Introducida en Python 3.10, la sentencia match-case
permite hacer coincidencias estructurales más avanzadas. Compara valores, tipos de objetos y sus atributos, y puede desempaquetar secuencias:
from dataclasses import dataclass
@dataclass
class Punto:
x: int
y: int
coordenada = Punto(10, 34)
match coordenada:
case Punto(x=10, y=40):
print("Coordenada 10, 40")
case Punto():
print("Es un punto")
case _:
print("No es un punto")
Conjuntos
Los conjuntos se crean con set()
y no mantienen el orden ni permiten duplicados. Se utilizan para operaciones matemáticas como intersección y unión. Los conjuntos inmutables se crean con frozenset()
:
conjunto1 = set(["a", "b", "a"])
conjunto2 = set(["a", "b", "c", "d"])
conjunto1 & conjunto2 # Intersección
conjunto1 | conjunto2 # Unión
conjunto1 - conjunto2 # Diferencia
conjunto1 ^ conjunto2 # Diferencia simétrica
Listas por Comprensión
Las listas por comprensión permiten crear listas de manera compacta. Ejemplos:
[0, 1, 4, 9, 16] # Cuadrados de números del 0 al 4
[(i, i + 2) for i in range(5)] # Tuplas con pares de números
Funciones
Las funciones se definen con def
y pueden recibir parámetros. *args
y **kwargs
permiten manejar un número variable de argumentos posicionales y por palabras clave, respectivamente. También se pueden definir funciones usando lambda
para expresiones simples:
def suma(x, y=2):
return x + y
suma = lambda x, y=2: x + y
Clases
Las clases se definen con class
y permiten crear objetos con métodos y atributos. El método __init__
inicializa atributos al instanciar la clase. Los atributos accesibles desde fuera de la clase se definen con self
. Ejemplo:
class Persona:
def __init__(self, nombre, edad):
self.nombre = nombre
self.edad = edad
def mostrar_edad(self):
print(self.edad)
def modificar_edad(self, edad):
if 0 <= edad <= 150:
self.edad = edad
return True
return False
p = Persona('Alicia', 20)
p.mostrar_edad() # Muestra 20
p.modificar_edad(21)
p.mostrar_edad() # Muestra 21
Este resumen abarca los conceptos esenciales de Python, incluyendo tipos de datos, estructuras de control, y el uso de funciones y clases.