B3-PYTHON Flashcards

(72 cards)

1
Q

¿Qué es Python, según la guía rápida?

A

Un lenguaje legible y versátil para automatizar tareas, analizar datos, crear APIs, ciencia y más.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

¿Qué convención de sangría es estándar en Python para definir bloques de código?

A

4 espacios.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Para controlar el flujo en Python se utilizan las sentencias if, elif y _____.

A

else

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

¿Qué son las comprensiones (comprehensions) en Python?

A

Una sintaxis para crear colecciones (como listas) en una sola línea de código.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

¿Cómo se definen funciones reutilizables en Python?

A

Usando la palabra clave def.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

En una definición de función, ¿qué sintaxis se usa para aceptar un número variable de argumentos posicionales?

A

*args

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

En una definición de función, ¿qué sintaxis se usa para aceptar un número variable de argumentos de palabra clave?

A

**kwargs

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

¿Qué herramienta se utiliza para crear entornos virtuales aislados en Python?

A

El módulo venv.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

¿Qué comando se utiliza para instalar paquetes externos en Python?

A

pip install nombre_del_paquete

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

¿Qué bloque de construcción se utiliza para manejar errores en tiempo de ejecución en Python?

A

La estructura try/except.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

¿Cuál es la forma recomendada de trabajar con archivos para garantizar que se cierren correctamente?

A

Usando la declaración with open(...).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

En POO, ¿cómo se llaman los métodos especiales con doble guion bajo al principio y al final, como \_\_init\_\_?

A

Métodos “dunder” (double underscore).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Menciona tres módulos importantes de la librería estándar de Python.

A

datetime, math, random, itertools, collections (cualquiera de estos).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

¿Cuál es la guía de estilo oficial para el código Python?

A

PEP 8.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Concepto: Tipado dinámico

A

El tipo de una variable se determina en tiempo de ejecución, no al declararla.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

En desarrollo web con Python, ¿qué dos paquetes son comunes para crear APIs REST?

A

fastapi y flask.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Para ciencia de datos e IA en Python, ¿cuáles son los tres paquetes fundamentales mencionados?

A

pandas, numpy y scikit-learn.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

El comando python en la terminal inicia el _____.

A

REPL (Read-Eval-Print Loop).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

¿Para qué sirve el REPL en Python?

A

Para probar expresiones y código al instante, línea por línea.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

¿Con qué comando se ejecuta un script de Python llamado mi_app.py?

A

python mi_app.py

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

¿Qué indica la construcción if \_\_name\_\_ == "\_\_main\_\_": en un script de Python?

A

Que el código dentro de este bloque solo se ejecutará si el archivo es el script principal, no si es importado.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

¿Qué convención de nomenclatura se usa para las variables en Python según PEP 8?

A

snake_case (minúsculas con guiones bajos).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

¿Qué valor booleano devuelve la expresión bool("")?

A

False

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

En Python, ¿cuál es el operador para la división entera?

A

//

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
En Python, ¿cuál es el operador para obtener el resto de una división?
`%` (módulo).
26
¿Qué palabra clave se usa para detener la ejecución de un bucle `for` o `while` prematuramente?
`break`
27
¿Qué estructura de datos es mutable, ordenada y permite duplicados?
Lista (`list`).
28
¿Qué estructura de datos es inmutable, ordenada y permite duplicados?
Tupla (`tuple`).
29
¿Qué estructura de datos almacena pares clave-valor con claves únicas?
Diccionario (`dict`).
30
¿Qué estructura de datos se utiliza para almacenar elementos únicos sin un orden específico?
Conjunto (`set`).
31
¿Cómo se puede unir dos listas y eliminar los elementos duplicados?
Convirtiendo la concatenación de las listas a un `set` y luego de vuelta a una `list`.
32
¿Qué es una función `lambda` en Python?
Una pequeña función anónima definida en una sola línea.
33
¿Dónde se coloca un `docstring` para documentar una función?
Como la primera declaración dentro de la definición de la función, encerrada en triples comillas.
34
¿Qué es el ámbito (scope) de una variable?
La región del código donde una variable es accesible.
35
¿Qué comando se utiliza para crear un entorno virtual llamado `.venv`?
`python -m venv .venv`
36
¿Qué función cumple el archivo `__init__.py` dentro de una carpeta?
Marca la carpeta como un paquete de Python, permitiendo la importación de sus módulos.
37
En el manejo de excepciones, ¿para qué sirve la cláusula `finally`?
Contiene código que se ejecuta siempre, haya o no una excepción.
38
¿Qué palabra clave se utiliza para lanzar una excepción explícitamente?
`raise`
39
Al abrir un archivo CSV para escribir, ¿por qué es importante usar el argumento `newline=""`?
Para evitar que se inserten saltos de línea dobles en sistemas como Windows.
40
En Programación Orientada a Objetos, ¿cuál es el propósito del método `__init__`?
Actuar como el constructor de la clase, inicializando los atributos del objeto.
41
¿Cómo se define que una clase `Estudiante` hereda de una clase `Persona`?
`class Estudiante(Persona):`
42
Dentro de una clase hija, ¿para qué se utiliza la función `super()`?
Para llamar a métodos de la clase padre.
43
¿Qué hace el método dunder `__str__`?
Devuelve una representación en cadena de texto "amigable" de un objeto.
44
¿Qué módulo de la librería estándar se usa para trabajar con fechas y horas?
`datetime`.
45
¿Qué clase del módulo `collections` es útil para contar la frecuencia de elementos en un iterable?
`Counter`.
46
La función `random.randint(a, b)` genera un entero aleatorio en el rango `[a, b]`, incluyendo _____.
ambos extremos (a y b).
47
¿Qué función del módulo `itertools` genera todas las combinaciones de un tamaño específico sin repetición?
`combinations`.
48
¿Qué hace la declaración `assert expresion`?
Lanza un `AssertionError` si la `expresion` es `False`.
49
En el módulo `unittest`, ¿cómo deben empezar los nombres de los métodos que contienen pruebas?
Deben empezar con `test_`.
50
¿Para qué sirve el módulo `logging`?
Para registrar mensajes sobre eventos que ocurren mientras se ejecuta un programa.
51
¿Qué son los `type hints` (anotaciones de tipo) en Python?
Anotaciones que sugieren el tipo esperado para variables, parámetros y valores de retorno, mejorando la legibilidad y el análisis estático.
52
¿Cuál es la principal ventaja de usar un generador en lugar de crear una lista completa?
Ahorra memoria al producir elementos "en streaming" (`yield`) uno a la vez, en lugar de almacenarlos todos.
53
¿Qué palabra clave se utiliza en una función para convertirla en un generador?
`yield`.
54
En notación Big-O, ¿cuál es la complejidad típica de acceder a un elemento de una lista por su índice, como `lista[i]`?
O(1) o tiempo constante.
55
En notación Big-O, ¿cuál es la complejidad típica de un doble bucle anidado que itera sobre la misma colección?
O(n²).
56
¿Cuál es la referencia principal para la documentación oficial de Python?
El sitio web docs.python.org.
57
Término: REPL
Consola interactiva para ejecutar código línea a línea.
58
Término: Sangría
Espacios al inicio de una línea que definen bloques de código.
59
Término: Mutable
Un objeto que se puede modificar en el mismo lugar de memoria después de su creación.
60
Término: Inmutable
Un objeto cuyo valor no puede cambiar después de su creación.
61
Término: Comprensión
Una sintaxis compacta para construir colecciones (listas, diccionarios, etc.).
62
Término: `*args` / `**kwargs`
Sintaxis para capturar un número variable de argumentos posicionales y de palabra clave, respectivamente.
63
Término: Docstring
Una cadena de texto usada para documentar un módulo, función, clase o método.
64
Término: Módulo
Un archivo de Python (`.py`) con código que puede ser importado.
65
Término: Paquete
Una carpeta que contiene módulos y un archivo `__init__.py`.
66
Término: venv
Un entorno virtual que aísla las dependencias de un proyecto.
67
Término: Excepción
Un error que ocurre durante la ejecución de un programa y que puede ser manejado.
68
Término: Context manager
Un objeto que define el comportamiento al entrar y salir de un bloque `with`, gestionando recursos.
69
Término: Dunder method
Un método con un nombre especial que empieza y termina con doble guion bajo, como `__init__`.
70
Término: Generador
Una función que usa `yield` para producir una secuencia de valores de forma perezosa (uno a la vez).
71
Término: Big-O
Notación que describe la complejidad o el rendimiento de un algoritmo.
72
Término: PEP 8
La guía de estilo oficial de Python que establece convenciones para la escritura de código legible.