Entradas

Programación funcional en Python

Map Aplica una función a todos los elementos en una lista de entrada.  Aquí está el plano: Sintaxis: map ( función a aplicar , lista de entrada ) Ejemplo: import math items=[5,3,1,4] list(map(math.sqrt,items)) Salida por consola: Out[1]: [2.23606797749979, 1.7320508075688772, 1.0, 2.0] Lambdas   Lambdas  son funciones de una línea.  También se les conoce como funciones anónimas en otros idiomas.  Es posible que desee utilizar lambdas cuando no desee utilizar una función dos veces en un programa.  Son como las funciones normales e incluso se comportan como ellas. Sintaxis:  Variable = lambda argumento : manipular ( argumentos ) Ejemplo: Creamos una función f que me devuelve el cuadrado de un número: def f(x):     return x**2 Por consola obtenemos: f(2) Out[3]: 4 Pero puedo hacer lo mismo con lambda en una sola línea:  g= lambda x:x**2 Por consola obtenemos: print(g(4)) 16 Filter Crea una lista de elementos para los cuales una función dev

Enumerate

Nos permite recorrer algo y tener un contador automático.  Aquí hay un ejemplo: items =['a','b','c','d',] for pos, value in enumerate(items):     print(f'{pos+1}: {value}') Al escribir este código en consola obtenemos: 1: a 2: b 3: c 4: d Algunas cosas que se pueden hacer: Su valor hexadecimal   enumerate(items) Out[21]: <enumerate at 0x110bc2288> Transformar a una lista:  list(enumerate(items)) Out[22]: [(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')] Transformar a una tupla: tuple(list(enumerate(items))) Out[24]: ((0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')) Transformar a un diccionario: set(list(enumerate(items))) Out[25]: {(0, 'a'), (1, 'b'), (2, 'c'), (3, 'd')} Transformar a un diccionario solo valores no las claves (key) set(items) Out[27]: {'a', 'b', 'c', 'd'} Referencias: 1

args y kwargs en Python (argumentos)

Imagen
args  representa un conjunto arbitrario de argumentos posicionales, mientras que  kwargs  es lo mismo pero con argumentos con  keyword , o nombre. De ahí el significado de  kwargs :  k ey w ord  arg ument s .  Hay que destacar que la sintaxis es  *  y  ** , siendo los nombres de  args  y  kwargs  una simple convención, pero no es un requisito estricto su uso; es decir, que si a una función le pasamos como argumento  *mi_lista  o  **mi_diccionario  tendrá el mismo efecto. *args:  es una lista de argumentos, como argumentos posicionales.   **kwargs:  es un diccionario cuyas claves se convierten en parámetros y sus valores en los argumentos de los parámetros. Por ejemplo: def lista_argumentos(*args):     for i, arg in enumerate(args):         print('%d - %s' % (i, arg)) Salida por consola: Cuando escribes por consola aparece el *args In [10]: lista_argumentos("Aulavir.com","María",[1,2],3) 0 - Aulavir.com 1 - María 2 - [1, 2] 3 - 3 De l

UnPacking dictionary (Desempaquetando diccionarios)

Primero creamos un diccionario cualquiera: auto ={'brand':'Hyundai',        'model':'Tucson',        'motor':'2.0 CVVT',        'year':2017,        } Luego para mostrarlo en pantalla desempaquetado: print('Marca: {}\n '       'Modelo: {}\n'       'Motor: {}\n'       'Año: {}'. format (               auto['brand'],               auto['model'],               auto['motor'],               auto['year'],             )) Como podemos ver utilizamos {}\n y .format  En consola obtenemos: Marca: Hyundai Modelo: Tucson Motor: 2.0 CVVT Año: 2017 Existe una forma mas reducida en la que creas el diccionario dentro del print:  print('Marca: {brand}\n'       'Modelo: {model}\n'       'Motor: {motor}\n'       'Año: {year}'.format(brand='Hyundai',             model='Tucson',             motor='2.0 CV

Mantener el orden de los diccionarios

Para realizar esto importamos la función: OrderedDict de la librería: collections from collections import OrderedDict a={'a':1, 'b':2, 'c':3,'d':4} od = OrderedDict(a) Salida por consola Primero verificamos que tipo de dato es "od": type(od) Out[20]: collections.OrderedDict Como podemos observar es de tipo OrderedDict Luego lo utilizamos: od Out[19]: OrderedDict([('a', 1), ('b', 2), ('c', 3), ('d', 4)]) Echo!!

Módulos en Python

Imagen
Para realizar módulos en Python primero debes crear dos archivos .py en una misma carpeta, en el uno colocas las funciones y en el otro las invocas, veamos: Primero creamos un archivo con las funciones: Luego creamos otro archivo donde invocamos a las funciones, en este caso para calcular la densidad y la respuesta la obtengamos con las unidades de medida deseadas. Existe otra forma de importar las funciones: Salida por consola: