En los dos artículos anteriores ( Conjunto 2 y Conjunto 3 ), discutimos los conceptos básicos de python. En este artículo, aprenderemos más sobre python y sentiremos el poder de python.
Diccionario en Python
En python, el diccionario es similar al hash o mapas en otros idiomas. Se compone de pares clave-valor. Se puede acceder al valor mediante una clave única en el diccionario. (Antes de Python 3.7, el diccionario solía estar desordenado, lo que significaba que los pares clave-valor no se almacenaban en el orden en que se ingresaban en el diccionario, pero desde Python 3.7 se almacenan en el orden en que el primer elemento se almacenará en la primera posición y el último en la última posición.)
Python3
# Create a new dictionary d = dict() # or d = {} # Add a key - value pairs to dictionary d['xyz'] = 123 d['abc'] = 345 # print the whole dictionary print (d) # print only the keys print (d.keys()) # print only values print (d.values()) # iterate over dictionary for i in d : print ("%s %d" %(i, d[i])) # another method of iteration for index, key in enumerate(d): print (index, key, d[key]) # check if key exist print ('xyz' in d) # delete the key-value pair del d['xyz'] # check again print ("xyz" in d)
Producción:
{'xyz': 123, 'abc': 345} ['xyz', 'abc'] [123, 345] xyz 123 abc 345 0 xyz 123 1 abc 345 True False
romper, continuar, pasar en Python
- break: te saca del bucle actual.
- continuar: finaliza la iteración actual en el bucle y pasa a la siguiente iteración.
- pass: La instrucción pass no hace nada. Se puede utilizar cuando se requiere una declaración. sintácticamente pero el programa no requiere ninguna acción.
Se usa comúnmente para crear clases mínimas.
Python3
# Function to illustrate break in loop def breakTest(arr): for i in arr: if i == 5: break print (i) # For new line print("") # Function to illustrate continue in loop def continueTest(arr): for i in arr: if i == 5: continue print (i) # For new line print("") # Function to illustrate pass def passTest(arr): pass # Driver program to test above functions # Array to be used for above functions: arr = [1, 3 , 4, 5, 6 , 7] # Illustrate break print ("Break method output") breakTest(arr) # Illustrate continue print ("Continue method output") continueTest(arr) # Illustrate pass- Does nothing passTest(arr)
Producción:
Break method output 1 3 4 Continue method output 1 3 4 6 7
mapa, filtrar, lambda
- map: La función map() aplica una función a cada miembro de iterable y devuelve el resultado. Si hay varios argumentos, map() devuelve una lista que consta de tuplas que contienen los elementos correspondientes de todos los iterables.
- filter: toma una función que devuelve True o False y la aplica a una secuencia, devolviendo una lista de solo aquellos miembros de la secuencia para los que la función devolvió True.
- lambda: Python proporciona la capacidad de crear una función en línea anónima simple (no se permiten declaraciones internamente) llamada función lambda. Usando lambda y map, puede tener dos bucles for en una línea.
Python3
# python program to test map, filter and lambda items = [1, 2, 3, 4, 5] #Using map function to map the lambda operation on items cubes = list(map(lambda x: x**3, items)) print(cubes) # first parentheses contains a lambda form, that is # a squaring function and second parentheses represents # calling lambda print( (lambda x: x**2)(5)) # Make function of two arguments that return their product print ((lambda x, y: x*y)(3, 4)) #Using filter function to filter all # numbers less than 5 from a list number_list = range(-10, 10) less_than_five = list(filter(lambda x: x < 5, number_list)) print(less_than_five)
Producción:
[1, 8, 27, 64, 125] 25 12 [-10, -9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4]
Para obtener más claridad sobre el mapa, el filtro y lambda, puede echar un vistazo al siguiente ejemplo:
Python3
# code without using map, filter and lambda # Find the number which are odd in the list # and multiply them by 5 and create a new list # Declare a new list x = [2, 3, 4, 5, 6] # Empty list for answer y = [] # Perform the operations and print the answer for v in x: if v % 2: y += [v*5] print(y)
Producción:
[15, 25]
La misma operación se puede realizar en dos líneas usando map, filter y lambda como:
Python3
# above code with map, filter and lambda # Declare a list x = [2, 3, 4, 5, 6] # Perform the same operation as in above post y = list(map(lambda v: v * 5, filter(lambda u: u % 2, x))) print(y)
Producción:
[15, 25]
Este artículo es una contribución de Nikhil Kumar Singh . Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA