| DJC | Tutoriales | Python |

Preguntas frecuentes sobre Python (FAQ)

En esta sección encontrarás un FAQ completo de Python, pensado para principiantes y desarrolladores intermedios/avanzados.
Hemos recopilado las preguntas más buscadas y las respondemos con ejemplos, consejos prácticos y enlaces a otros tutoriales de DJC.


Preguntas Básicas sobre Python

¿Qué es Python?

Python es un lenguaje de programación interpretado, de alto nivel y de propósito general.
Se caracteriza por su sintaxis sencilla y filosofía de "legibilidad primero".
Es usado en desarrollo web, ciencia de datos, inteligencia artificial, automatización y más.

¿Por qué se llama Python?

Su creador, Guido van Rossum, eligió el nombre inspirado en el grupo de comedia británico Monty Python’s Flying Circus, no en la serpiente.

¿Python es gratis?

Sí. Python es open source, con licencia PSF (Python Software Foundation), y se puede usar en proyectos personales y comerciales.

¿Cómo instalar Python?

Descárgalo desde la página oficial python.org.
En sistemas Linux y macOS, Python suele venir preinstalado.
Para verificarlo:

python --version

¿Python es fácil de aprender?

Sí. Es uno de los lenguajes más recomendados para principiantes gracias a su sintaxis clara y gran comunidad.


Preguntas Intermedias sobre Python

Diferencia entre lista, tupla y set

  • Lista (list): ordenada, mutable, permite duplicados.
  • Tupla (tuple): ordenada, inmutable.
  • Set (set): no ordenado, sin duplicados.
lista = [1, 2, 2, 3]
tupla = (1, 2, 3)
conjunto = {1, 2, 3}

¿Qué es un diccionario en Python?

Un dict almacena datos en pares clave:valor.

persona = {"nombre": "Ana", "edad": 25}
print(persona["nombre"])  # Ana

¿Qué es indentación y por qué importa?

Python usa espacios o tabulaciones para estructurar el código. Ejemplo correcto:

if True:
    print("Correcto")

¿Qué son args y *kwargs?

  • *args: recibe argumentos variables como tupla.
  • **kwargs: recibe argumentos con nombre como diccionario.
def ejemplo(*args, **kwargs):
    print(args)
    print(kwargs)

ejemplo(1, 2, nombre="Ana", edad=30)

¿Qué es una clase en Python?

Las clases permiten programar con POO (Programación Orientada a Objetos).

class Persona:
    def __init__(self, nombre):
        self.nombre = nombre

p = Persona("Juan")
print(p.nombre)

¿Cómo levantar un servidor web HTTP básico con Python?

En Python, puedes levantar un servidor web HTTP básico con un solo comando gracias al módulo integrado http.server.

Desde la terminal

python -m http.server 8000
  • 8000 es el puerto (puedes cambiarlo a otro, por ejemplo 8080).
  • Servirá los archivos de la carpeta donde ejecutes el comando.
  • Acceso en el navegador: http://localhost:8000

Especificando una carpeta

python -m http.server 8000 --directory /ruta/a/tu/carpeta

Usando un script en Python

from http.server import SimpleHTTPRequestHandler, HTTPServer

puerto = 8000
servidor = HTTPServer(("0.0.0.0", puerto), SimpleHTTPRequestHandler)

print(f"Servidor corriendo en http://localhost:{puerto}")
servidor.serve_forever()

"0.0.0.0" permite que otras máquinas de la red local accedan. SimpleHTTPRequestHandler sirve archivos estáticos desde el directorio actual.

Notas importantes

  • Este servidor es solo para pruebas locales, no es seguro para producción.
  • Para entornos reales usa frameworks como Flask, Django o FastAPI con servidores como Gunicorn o Uvicorn.

Preguntas Avanzadas sobre Python

¿Qué son decoradores en Python?

Un decorador es una función que modifica el comportamiento de otra función.

def decorador(func):
    def wrapper():
        print("Antes")
        func()
        print("Después")
    return wrapper

@decorador
def saludar():
    print("Hola")

saludar()

¿Qué es la regla LEGB en Python?

Define el orden en el que se buscan variables:

  • Local
  • Enclosing (funciones anidadas)
  • Global
  • Built-in

¿Cómo maneja Python la memoria?

Python usa un administrador de memoria dinámico y un colector de basura (garbage collector) que limpia objetos no usados.

¿Qué significa “Batteries Included”?

Es una filosofía de Python: incluye una gran librería estándar lista para usar (módulos para trabajar con archivos, JSON, web, bases de datos, etc.).


Este FAQ de Python reúne las dudas más frecuentes desde lo básico hasta lo avanzado. La idea es que siempre encuentres aquí una respuesta clara, breve y con ejemplos prácticos.

Próximamente iremos ampliando más preguntas. Mientras tanto, revisa el Tutorial de Python paso a paso.

| DJC | Tutoriales | Python |