Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
1
respuesta

Desafío: resumiendo un texto largo

Python es un lenguaje de programación interpretado, multiparadigma y de alto nivel, conocido por su legibilidad y versatilidad. Fue creado a finales de los años 80 por Guido van Rossum en los Países Bajos como sucesor del lenguaje ABC. Su nombre proviene de la afición de Van Rossum por el grupo humorístico Monty Python.

Características principales:

  • Multiparadigma: Soporta programación orientada a objetos, imperativa y funcional.
  • Interpretado y dinámico: No requiere compilación y es multiplataforma.
  • Licencia: Código abierto bajo la Python Software Foundation License.
  • Popularidad: Consistente entre los lenguajes más populares.

Historia:

  • 1991: Primera versión pública (0.9.0) con características como clases, herencia y manejo de excepciones.
  • 1994: Lanzamiento de Python 1.0 con herramientas funcionales como lambda, map y filter.
  • 2000: Lanzamiento de Python 2.0, que introdujo listas por comprensión y recolección de basura para referencias cíclicas.
  • Compatibilidad GPL: En 2001, la licencia fue ajustada para ser compatible con la GNU GPL.

Filosofía:

La filosofía de Python está resumida en "El Zen de Python", escrito por Tim Peters. Destaca principios como la simplicidad, la legibilidad y la preferencia por una única manera obvia de hacer las cosas. Ejemplo: "Bello es mejor que feo" y "Explícito es mejor que implícito".

Tipos de datos:

Python incluye tipos básicos como cadenas (str), listas (list), tuplas (tuple), conjuntos (set), diccionarios (dict), números enteros (int), flotantes (float) y booleanos (bool). Estos pueden ser mutables o inmutables.

Condicionales:

Las estructuras condicionales (if, elif, else) permiten ejecutar bloques de código basados en condiciones específicas. Ejemplo:

if verdadero:
    print("Verdadero")
else:
    print("Falso")

Bucle for

  • El bucle for en Python es similar al foreach de otros lenguajes. Recorre objetos iterables como listas, tuplas o cadenas.
  • Ejemplo:
    for i in ["a", "b", "c"]:
        print(i)
    
    Salida:
    a
    b
    c
    

Bucle while

  • El bucle while evalúa una condición y ejecuta el bloque de código mientras sea verdadera.
  • Ejemplo:
    numero = 0
    while numero < 5:
        print(numero, end=" ")
        numero += 1
    
    Salida:
    0 1 2 3 4
    

Listas y Tuplas

  • Listas (list): Mutables, declaradas con corchetes []. Permiten modificar, añadir o eliminar elementos.
    • Ejemplo:
      lista = ["abc", 42, 3.14]
      lista.append(True)  # Añade un elemento
      del lista[0]  # Elimina un elemento
      
  • Tuplas (tuple): Inmutables, declaradas con paréntesis (). No permiten modificar su contenido después de ser creadas.
    • Ejemplo:
      tupla = ("abc", 42, 3.14)
      tupla[0]  # Acceso al primer elemento
      

Diccionarios

  • Colecciones de pares clave-valor, declarados con llaves {}. Las claves deben ser inmutables (e.g., cadenas, tuplas).
  • Ejemplo:
    diccionario = {"nombre": "Alicia", "edad": 20}
    diccionario["nombre"]  # Acceso al valor por clave
    diccionario["edad"] = 21  # Modificación de un valor
    

Sentencia match-case (Python 3.10+)

  • Introduce Structural Pattern Matching, más avanzado que el clásico switch-case. Permite comparar valores, tipos y atributos, además de desempaquetar secuencias.
  • Ejemplo:
    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

  • Colecciones no ordenadas y sin duplicados, útiles para operaciones matemáticas como intersección, unión y diferencia.
  • Ejemplo:
    conjunto1 = set(["a", "b"])
    conjunto2 = set(["b", "c"])
    conjunto1 & conjunto2  # Intersección: {'b'}
    conjunto1 | conjunto2  # Unión: {'a', 'b', 'c'}
    

Listas por Comprensión

  • Forma compacta de crear listas basadas en iterables.
  • Ejemplo:
    cuadrados = [i * i for i in range(5)]
    # Resultado: [0, 1, 4, 9, 16]
    

Funciones

  • Definidas con def: Bloques reutilizables de código.
    • Ejemplo:
      def suma(x, y=2):
          return x + y
      suma(4)  # Resultado: 6
      
  • Argumentos variables:
    • *args: Recibe argumentos posicionales como tupla.
    • **kwargs: Recibe argumentos clave-valor como diccionario.
  • Funciones lambda: Funciones anónimas de una sola línea.
    • Ejemplo:
      suma = lambda x, y: x + y
      suma(4, 10)  # Resultado: 14
      

1 respuesta

Excelente, muchas gracias por compartir!