B3_Python Flashcards

1
Q

Características del lenguaje

A

Es multiplataforma, con una sintaxis sencilla, utiliza menos líneas de código que los lenguajes convencionales.
Es interpretado y soporta los paradigmas de programación: funcional, proceimental y orientado a objetos.
Es dinámicamente tipado.

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

Última versión de Python

A

3.13.0

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

Comentarios de una línea

A

This is a comment.

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

Comentario de varias líneas

A

”””
This is a comment
written in
more than just one line
“””

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

Nombre de variables

A

Deben comenzar con una letra o un carácter de subrayado, no puede comenzar con un número, solo puede contener caracteres alfanuméricos y guiones bajos (A-z, 0-9 y _). Distinguen entre mayúsculas y minúsculas, no se permiten palabras reservadas.

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

Asignar múltiples variables

A

x, y, z = “Orange”, “Banana”, “Cherry”

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

Desempacar una colección

A

fruits = [“apple”, “banana”, “cherry”]
x, y, z = fruits

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

Imprimir variables

A

print(x + y + z) imprime la suma de las cadenas literal o hace la operacion matemática de números.
print(x, y) imprime dejando un espacio por el medio

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

Global variables

A

Se pueden declarar variables globales dentro de una función con la palabra global.

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

Tipos de datos texto

A

str
x = “Hello World”

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

Tipos de datos numéricos

A

int, float, complex
x = 20
x = 20.5
x = 1j

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

Tipos de datos secuenciales

A

list, tuple, range
x = [“apple”, “banana”, “cherry”]
x = (“apple”, “banana”, “cherry”)
x = range(6)

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

Tipos de datos de mapas

A

dict
x = {“name” : “John”, “age” : 36}

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

Tipos de datos set

A

set, frozenset
x = {“apple”, “banana”, “cherry”}
x = frozenset({“apple”, “banana”, “cherry”})

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

Tipos de datos bool

A

bool
x = True

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

Tipos de datos binarios

A

bytes, bytearray, memoryview
x = b”Hello”
x = bytearray(5)
x = memoryview(bytes(5))

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

Tipos de datos none

A

NoneType
x = None

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

Funciones constructoras

A

Cada tipo de datos tiene sus funciones constructoras
x = complex(1j)
x = list((“apple”, “banana”, “cherry”))

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

Retornar el tipo de datos

A

type(x)

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

Format Strings

A

txt = f”My name is John, I am {age}”
txt = f”The price is {price:.2f} dollars”

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

Caracteres de escape

A

' Single Quote
\ Backslash
\n New Line
\r Carriage Return
\t Tab
\b Backspace
\f Form Feed
\ooo Octal value
\xhh Hex value

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

Booleans

A

Se evalúan condiciones y variables. Casi todos los valores son True excepto los strings vacíos, el número 0, y las colecciones vacías.

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

Operadores aritméticos

A

+ Addition x + y
- Subtraction x - y
* Multiplication x * y
/ Division x / y
% Modulus x % y
** Exponentiation x ** y
// Floor division x // y

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

Operadores de comparación

A

== Equal x == y
!= Not equal x != y
> Greater than x > y
< Less than x < y
>= Greater than or equal to x >= y
<= Less than or equal to x <= y

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Operadores lógicos
and x < 5 and x < 10 or x < 5 or x < 4 not not(x < 5 and x < 10)
26
Operadores de identidad
Se usan para comparar objetos: is x is y is not x is not y
27
Operadores de membresía
Se utilizan para probar si una secuencia se presenta en un objeto: in x in y not in x not in y
28
Operadores bit a bit
& AND Devuelve 1 si ambos on 1 x & y | OR Devuelve 1 si uno de los dos es 1 x | y ^ XOR Devuelve uno solo si uno de los dos es 1 x ^ y ~ NOT Invierte todos los bits ~x << Desplazamiento a la izquierda de relleno cero x << 2 >> Desplazamiento a la derecha de relleno cero x >> 2
29
list
La lista es una colección ordenada y modificable. Permite miembros duplicados. thislist = ["apple", "banana", "cherry"]
30
tuple
Es una colección ordenada e inmutable. Permite miembros duplicados. thistuple = ("apple", "banana", "cherry") thistuple = ("apple",)
31
set
Es una colección desordenada, inmutable( se permiten añadir y eliminar) y no indexada. No hay miembros duplicados. myset = {"apple", "banana", "cherry"} Los valores True y 1 son considerados iguales.
32
dict
Es una colección ordenada y modificable. No hay miembros duplicados. Almacenan datos en pares clave:valor. Desde Python 3.7 los diccionarios son ordenados. thisdict = { "brand": "Ford", "model": "Mustang", "year": 1964 }
33
Añadir elementos a una lista
thislist.append("orange") thislist.insert(1, "orange") thislist.extend(thistuple)
34
Eliminar elementos de una lista
thislist.remove("banana") elimina el elemento especificado thislist.pop() elimina el último elemento o según el índice thislist.clear() borra todos los elementos de la lista del thislist elimina la lista completa
35
Loop Lists
for x in thislist: for i in range(len(thislist)): se usa range() y len() para iterar adecuadamente. while i < len(thislist):
36
List Comprehension
[expression for item in iterable if condition == True] [x for x in fruits if "a" in x] [x for x in range(10)]
37
Sort Lists
thislist.sort() thislist.sort(reverse = True) thislist.sort(key = myfunc)
38
Copy Lists
mylist = thislist.copy() con la función copy mylist = list(thislist) con el constructor de la clase list mylist = thislist[:] con el slice operador
39
Join Lists
list3 = list1 + list2 list1.extend(list2) agrega los elementos al final de la lista for x in list2: list1.append(x) agrega elementos uno a uno
40
Update tuples
Se copia la tupla en un llista, se cambia y luego de vuelve a crear la tupla. x = ("apple", "banana", "cherry") y = list(x) y[1] = "kiwi" x = tuple(y)
41
Add items tuples
thistuple = ("apple", "banana", "cherry") y = list(thistuple) y.append("orange") thistuple = tuple(y) o sumar dos tuplas thistuple = ("apple", "banana", "cherry") y = ("orange",) thistuple += y
42
Removes items tuples
thistuple = ("apple", "banana", "cherry") y = list(thistuple) y.remove("apple") thistuple = tuple(y) del thistuple()
43
Unpack tuples
fruits = ("apple", "banana", "cherry") (green, yellow, red) = fruits fruits = ("apple", "banana", "cherry", "strawberry", "raspberry") (green, yellow, *red) = fruits (green, *tropic, red) = fruits
44
Loop Tuples
for x in thistuple: for i in range(len(thistuple)): while i < len(thistuple):
45
Join tuples
tuple3 = tuple1 + tuple2 mytuple = fruits * 2
46
Tuples Methods
count() Retorna el número de veces que ocurre un valor determinado en le tupla. index() Busca en la tupla un valor específico y devuelve la posición donde se encontró.
47
Acceder a los elementos de un set
for x in thisset:
48
Add set items
thisset.add("orange")
49
Add sets or add any iterable
thisset = {"apple", "banana", "cherry"} tropical = {"pineapple", "mango", "papaya"} mylist = ["kiwi", "orange"] thisset.update(tropical) thisset.update(mylist)
50
Remove Set Items
thisset.remove("banana") thisset.discard("banana") aunque el elemento no este no da error x = thisset.pop() elimina un elemnto aleatoriamente thisset.clear() del thisset
51
Loop Sets
for x in thisset:
52
Join Sets
union() y update() unen todos los elementos de ambos conjuntos. intersection() permite solo los duplicados. difference() mantiene los elementos del 1er set que no están el segundo. symmetric_difference() mantiene todos los elementos excepto los duplicados.
53
Acceder a los elementos de un diccionario
x = thisdict.get("model") x = thisdict["model"] x = thisdict.keys() retorna una lista de las llaves.
54
Adicionar elementos a un diccionario
thisdict["color"] = "red" thisdict.update({"color": "red"})
55
Cambiar elementos de la lista
thisdict["year"] = 2018 thisdict.update({"year": 2020})
56
Eliminar elementos de un diccionario
thisdict.pop("model") thisdict.popitem() eleimina el ultimo elemento del thisdict["model"] thisdict.clear()
57
Loop Dictionaries
for x in thisdict.keys se refiere a las claves for x in thisdict.values(): se refiere a los valores for x, y in thisdict.items(): se refiere a los ambos
58
Copiar un diccionario
mydict = thisdict.copy() mydict = dict(thisdict)
59
Declarar funciones en Python
def my_function(): luego se le llama: my_funtion()
60
Paso de parámetros y argumentos
def my_function(fname):
61
Argumentos arbitrarios *args
def my_function(*kids): la función recibirá una tupla de argumentos
62
Argumentos de palabra clave
def my_function(child3, child2, child1): my_function(child1 = "Emil", child2 = "Tobias", child3 = "Linus")
63
Argumentos arbitrarios de palabra clave **kargs
def my_function(**kids): la función recibirá un diccionario de argumentos
64
Paso de parámetros por defecto
def my_function(country = "Norway"): En caso de que no se pase ningún parámetro se escoge ese
65
Paso de una lista por parámetros
def my_function(food):
66
La sentencia pass
def myfunction(): pass Se usa en caso de que la funcion este vacía.
67
Función con SOLO argumentos posicionales
def my_function(x, /):
68
Función SOLO argumentos palabras clave
def my_function(*, x):
69
Lambda, pequeña función anónima
lambda arguments : expression x = lambda a : a + 10 print(x(5))
70
__init__() Function
Asigna valores a las propiedades del objeto u otras operaciones que sean necesarias cuando se crea el objeto class Person: def __init__(self, name, age): self.name = name self.age = age p1 = Person("John", 36) print(p1.name) print(p1.age)
71
__str__() function
Controla lo que se debe devolver cuando el objeto de clase se representa como una cadena
72
parámetro self
Es una referencia a la instancia actual de la clase y se utiliza para acceder a variables que pertenecen a la clase.
73
Eliminar objetos y sus propiedades
del p1.age del p1
74
Herencia en Python
class Student(Person): def __init__(self, fname, lname, year): super().__init__(fname, lname) self.graduationyear = year x = Student("Mike", "Olsen", 2019)
75
Iterador en Python
myit = iter(mytuple) objeto sobre el que se puede iterar, lo que significa que puede recorrer todos los valores. Tiene los métodos iter() y next(). Todos los objetos iterables tienen un método iter() que se utiliza para obtener un iterador
76
StopIteration
Para evitar que la iteración continúe para siempre, podemos usar la declaración StopIteration
77
Palabra clave nonlocal
Hace que la variable pertenezca a la función externa.
78
Módulos en Python
import mymodule import mymodule as mx from mymodule import person1
79
Fechas Python
import datetime x = datetime.datetime.now() x = datetime.datetime(2018, 6, 1) print(x.strftime("%B")) # para dar formato
80
Iterar con enumerate
for indice, l in enumerate(lista): print(indice, l)
81
Módulo Math
import math x = math.sqrt(64) x = math.ceil(1.4) y = math.floor(1.4) x = math.pi
82
De JSON a Python
import json x = '{ "name":"John", "age":30, "city":"New York"}' y = json.loads(x) print(y["age"]) el resultado es un diccionario Python
83
De Python a JSON
import json x = { "name": "John", "age": 30, "city": "New York" } y = json.dumps(x) print(y)
84
Módulo RegEx
import re findall() Retorna una lista que contiene todas las coincidencias search() Devuelve un objeto Match si hay una coincidencia en cualquier parte de la cadena split() Devuelve una lista donde la cadena se ha dividido en cada coincidencia sub Reemplaza una o varias coincidencias con una cadena
85
PIP
PIP es un administrador de paquetes para paquetes o módulos de Python
86
Python Try Except
try prueba un bloque de código en busca de errores except permite manejar el error else permite ejecutar código cuando no hay ningún error. finally permite ejecutar código, independientemente del resultado de los bloques try y except
87
Módulo moviepy
Permite editar vídeos con Python
88
Python user input
username = input("Enter username:") print("Username is: " + username)
89
Matplotlib
Biblioteca para la generación de gráficos en dos dimensiones, a partir de datos contenidos en listas o arrays en el lenguaje de programación Python( NumPy). La mayoría de las utilidades se encuentran en le submódulo pyplot
90
Numpy
Abreviatura de Python Numérico. Librería que se utiliza para trabajar con matrices. import numpy as np arr = np.array([1, 2, 3, 4, 5])
91
Pandas
("Panel Data") Librería de Python que se utiliza para trabajar con conjuntos de datos. Tiene funciones para analizar, limpiar, explorar y manipular datos. Permite analizar big data y sacar conclusiones basadas en teorías estadísticas.
92
Pandas (respuestas sobre los datos)
¿Existe una correlación entre dos o más columnas? ¿Qué es el valor promedio? ¿Valor máximo? ¿Valor mínimo? Limpiar datos( Elimina filas que no son relevantes o que contienen valores incorrectos, como valores vacíos o NULL.)
93
serie Pandas myvar = pd.Series(a)
Es como una columna de una tabla. Es una matriz unidimensional que contiene datos de cualquier tipo.
94
Pandas DataFrames
Es una estructura de datos bidimensional, como una matriz bidimensional o una tabla con filas y columnas.
95
Pandas (Read CSV Files, archivos separados por comas)
df = pd.read_csv('data.csv')
96
Pandas read JSON (JavaScript Object Notation)
df = pd.read_json('data.json')
97
SciPy
Significa Python Científico. Es una biblioteca de cálculo científico (optimización, estadísticas y procesamiento de señales.) que utiliza NumPy debajo. Optimiza y agrega funciones que se usan con frecuencia en NumPy y Data Science.
98
Django
Es un framework web del lado del servidor back-end. Es gratuito, de código abierto y está escrito en Python. Facilita la creación de páginas web.
99
¿Cómo trabaja Django?
Sigue el patrón de diseño MVT (Model View Template) Modelo: los datos que desea presentar, generalmente datos de una base de datos. Vista: un controlador de solicitudes que devuelve la plantilla y el contenido relevantes, según la solicitud del usuario. Plantilla: un archivo de texto (como un archivo HTML) que contiene el diseño de la página web, con lógica sobre cómo mostrar los datos.
100
Programación funcional en Python
Python usa las funciones de orden superior. Estas son las funciones que contienen otras funciones como parámetros de entrada o si devuelve una función como salida, es decir, las funciones que operan con otra funciones.
101
Función map() en Python
lista = [1, 2, 3, 4, 5] def por_dos(x): return x * 2 lista_pordos = map(por_dos, lista) o lista = [1, 2, 3, 4, 5] lista_pordos = map(lambda x: 2*x, lista) Toma una función y un iterable como entrada, aplicando la función a cada elemento.
102
Función filter() en Python
Recibe una función y una lista pero el resultado es la lista inicial filtrada. Es decir, se pasa cada elemento de la lista por la función, y sólo si su resultado es True, se incluye en la nueva lista. lista = [7, 4, 16, 3, 8] pares = filter(lambda x: x % 2 == 0, lista)
103
Funcion reduce() en Python
Se usa para reducir todos los elementos de la entrada a un único valor aplicando un determinado criterio. from functools import reduce lista = [1, 2, 3, 4, 5] suma = reduce(lambda acc, val: acc + val, lista) o suma = reduce(add, lista) print(suma) # 15
104
Módulos de programación funcional en Python
itertools — Funciones que crean iteradores para bucles eficientes functools — Funciones de orden superior y operaciones sobre objetos invocables operator — Operadores estándar como funciones
105
¿Qué es functools?
El módulo functools es para funciones de orden superior: funciones que actúan o retornan otras funciones. En general, cualquier objeto invocable puede ser tratado como una función para los propósitos de este módulo.
106
Test unitarios con assert Python
assert(calcula_media([3, 7, 5]) == 5.0)
107
Test unitarios Unittest (pyTest)
class TestCalculaMedia(unittest.TestCase): def test_1(self): resultado = calcula_media([10, 10, 10]) self.assertEqual(resultado, 10) def test_2(self): resultado = calcula_media([5, 3, 4]) self.assertEqual(resultado, 4) if __name__ == '__main__': unittest.main()
108
Librería TensorFlow
Fue desarrollada por Google y es clave en el cálculo numérico. Sus diagramas de flujo de datos son muy utilizados en Deep Learning. Su estructura permite crear una red neuronal, que sirve para proporcionar un nuevo enfoque en conceptualización de las matemáticas.
109
Librería PyTorch
Desarrollada por Facebook. También se emplea en cálculo numérico y sus tarjetas gráficas son fundamentales para la ejecución rápida del código.
110
Librería Keras
Su cometido es el desarrollo de modelos de deep learning, de forma que se crean prototipos de redes neuronales de una forma rápida y eficaz.
111
Librería Scikit-learn
Está pensada para la construcción de modelos de aprendizaje automático o machine learning, así como para el análisis de datos. Acciones de regresión, clasificación y agrupamiento de los datos son posibles. Su interfaz es sencilla, puesto que solo se requiere de una línea de código.
112
Pandas
es muy usada en Data Science. Los datos son fáciles de trabajar, ya que sus estructuras están conformadas por una serie de datos, así como el Data Frame para dos dimensiones.
113
Seaborn
Mientras que la manipulación de los datos es la base de Pandas, Seaborn apuesta por la visualización de datos estadísticos para entender el data. De esta manera, su interfaz es de alto nivel, además de interactiva.
114
Bokeh
Es una de las librerías de Python que destaca por su interactividad. Sus gráficos son muy versátiles y en tiempo real, además.
115
NumPy
Permite generar una estructura de datos universal, lo que se traduce por un mejor análisis de datos, ya que se da un intercambio de datos entre diferentes algoritmos. Sus vectores son multidimensionales y las matrices disponen de una gran capacidad.