En Python, Dictionary es una colección de valores de datos desordenados. Los diccionarios también son modificables e indexados. El diccionario contiene el par clave:valor y se escriben entre corchetes. Cada par clave:valor asigna la clave a su valor asociado.
Aquí usamos el método isinstance() para verificar el tipo de valor, ya sea un isinstance()
método list, int, str, tuple, etc., que es un método incorporado en Python. Devuelve un booleano si el objeto pasado es una instancia de la clase dada o no.
Analicemos diferentes métodos para encontrar la longitud de los valores del diccionario.
Nota: En los métodos siguientes, la longitud del valor de la string se toma como uno.
Método #1 Usando el operador in
Ejemplo 1
# Python program to find the # length of dictionary values def main(): # Defining the dictionary dict1 = {'a':[1, 2, 3], 'b'🙁1, 2, 3), 'c':5, 'd':"nopqrs", 'e':["A", "B", "C"]} # Initialize count count = 0 # using in operator for k in dict1: # Check the type of value # is int or not if isinstance(dict1[k], int): count += 1 # Check the type of value # is str or not elif isinstance(dict1[k], str): count += 1 else: count += len(dict1[k]) print("The total length of value is:", count) # Driver Code if __name__ == '__main__': main()
Producción:
The total length of value is: 11
Ejemplo :2
# Python program to find the # length of dictionary values def main(): # Defining the dictionary dict1 = {'A':"abcd", 'B':set([1, 2, 3]), 'C'🙁12, "number"), 'D':[1, 2, 4, 5, 5, 5]} # Create a empty dictionary dict2 = {} # using in operator for k in dict1: # Check the type of value # is int or not if isinstance(dict1[k], int): dict2[k] = 1 # Check the type of value # is str or not elif isinstance(dict1[k], str): dict2[k] = 1 else: dict2[k] = len(dict1[k]) print("The length of values associated\ with their keys are:", dict2) print("The length of value associated\ with key 'B' is:", dict2['B']) # Driver Code if __name__ == '__main__': main()
Producción:
La longitud de los valores asociados con sus claves es: {‘A’: 1, ‘B’: 3, ‘C’: 2, ‘D’: 6} La longitud del
valor asociado con la clave ‘B’ es: 3
Método #2 Usando la comprensión de listas
# Python program to find the # length of dictionary values def main(): # Defining the dictionary dict1 = {'a':[1, 2, 3], 'b'🙁1, 2, 3), 'c':5, 'd':"nopqrs", 'e':["A", "B", "C"]} # using list comprehension count = sum([1 if isinstance(dict1[k], (str, int)) else len(dict1[k]) for k in dict1]) print("The total length of values is:", count) # Driver Code if __name__ == '__main__': main()
Producción:
The total length of values is: 11
Método #3 Usando la comprensión del diccionario
# Python program to find the # length of dictionary values def main(): # Defining the dictionary dict1 = {'A': "abcd", 'B': set([1, 2, 3]), 'C': (12, "number"), 'D': [1, 2, 4, 5, 5, 5]} # using dictionary comprehension dict2 = {k:1 if isinstance(dict1[k], (str, int)) else len(dict1[k]) for k in dict1} print("The length of values associated \ with their keys are:", dict2) print("The length of value associated \ with key 'B' is:", dict2['B']) # Driver Code if __name__ == '__main__': main()
Producción:
La longitud de los valores asociados con sus claves es: {‘A’: 1, ‘B’: 3, ‘C’: 2, ‘D’: 6} La longitud del
valor asociado con la clave ‘B’ es: 3
Método #4 Usando dict.items()
Ejemplo 1
# Python program to find the # length of dictionary values def main(): # Defining the dictionary dict1 = {'a':[1, 2, 3], 'b'🙁1, 2, 3), 'c':5, 'd':"nopqrs", 'e':["A", "B", "C"]} # Initialize count count = 0 # using dict.items() for key, val in dict1.items(): # Check the type of value # is int or not if isinstance(val, int): count += 1 # Check the type of value # is str or not elif isinstance(val, str): count += 1 else: count += len(val) print("The total length of value is:", count) # Driver code if __name__ == '__main__': main()
Producción:
The total length of values is: 11
Ejemplo :2
# Python program to find the # length of dictionary values def main(): # Defining the dictionary dict1 = {'A': "abcd", 'B': set([1, 2, 3]), 'C': (12, "number"), 'D': [1, 2, 4, 5, 5, 5]} # Create a empty dictionary dict2 = {} # using dict.items() for key, val in dict1.items(): # Check the type of value # is int or not if isinstance(val, int): dict2[key] = 1 # Check the type of value # is str or not elif isinstance(val, str): dict2[key] = 1 else: dict2[key] = len(val) print("The length of values associated \ with their keys are:", dict2) print("The length of value associated \ with key 'B' is:", dict2['B']) # Driver Code if __name__ == '__main__': main()
Producción:
La longitud de los valores asociados con sus claves es: {‘A’: 1, ‘B’: 3, ‘C’: 2, ‘D’: 6} La longitud del
valor asociado con la clave ‘B’ es: 3
Método #5 Usando enumerate()
Ejemplo 1
# Python program to find the # length of dictionary values def main(): # Defining the dictionary dict1 = {'a':[1, 2, 3], 'b'🙁1, 2, 3), 'c':5, 'd':"nopqrs", 'e':["A", "B", "C"]} # Initialize count count = 0 # using enumerate() for k in enumerate(dict1.items()): # Check the type of value # is int or not if isinstance(k[1][1], int): count += 1 # Check the type of value # is str or not elif isinstance(k[1][1], str): count += 1 else: count += len(k[1][1]) print("The total length of value is:", count) # Driver Code if __name__ == '__main__': main()
Producción:
The total length of value is: 11
Ejemplo :2
# Python program to find the # length of dictionary values def main(): # Defining the dictionary dict1 = {'A': "abcd", 'B': set([1, 2, 3]), 'C': (12, "number"), 'D': [1, 2, 4, 5, 5, 5]} # Create a empty dictionary dict2 = {} # using enumerate() for k in enumerate(dict1.items()): # Check the type of value # is int or not if isinstance(k[1][1], int): dict2[k[1][0]] = 1 # Check the type of value # is str or not elif isinstance(k[1][1], str): dict2[k[1][0]] = 1 else: dict2[k[1][0]] = len(k[1][1]) print("The length of values associated\ with their keys are:", dict2) print("The length of value associated \ with key 'B' is:", dict2['B']) # Driver Code if __name__ == '__main__': main()
Producción:
La longitud de los valores asociados con sus claves es: {‘A’: 1, ‘B’: 3, ‘C’: 2, ‘D’: 6} La longitud del
valor asociado con la clave ‘B’ es: 3
Publicación traducida automáticamente
Artículo escrito por nishthagoel712 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA