Dado un diccionario con tipos de datos mixtos como valores, la tarea es escribir un programa de Python para convertir strings analizadas por diferentes delimitaciones.
Ejemplos:
Entrada: test_dict = {‘Gfg’: 4, ‘is’: «1», ‘best’: [8, 10], ‘geek’: (10, 11, 2)}, list_delim, tuple_delim = ‘-‘, ‘^’
Salida: {‘Gfg’: ‘4’, ‘es’: ‘1’, ‘mejor’: ‘8-10’, ‘geek’: ’10^11^2′}
Explicación: los elementos de la lista están unidos por -, las tuplas por el símbolo ^.
Entrada: test_dict = {‘Gfg’: 4, ‘is’: «1», ‘best’: [8, 10], ‘geek’: (10, 11, 2)}, list_delim, tuple_delim = ‘*’, ‘,’
Salida: {‘Gfg’: ‘4’, ‘es’: ‘1’, ‘mejor’: ‘8*10’, ‘geek’: ‘10,11,2’}
Explicación: los elementos de la lista se unen con *, las tuplas con el símbolo .
Ejemplo: Usar loop + isinstance() + join()
En esto, verificamos todos los tipos de datos de valores usando isinstance() y los unimos usando join() para delimitaciones de diferencias, convirtiéndolas en strings analizadas.
Python3
# Python3 code to demonstrate working of # Convert dictionary values to Strings # Using loop + isinstance() # initializing dictionary test_dict = {'Gfg' : 4, 'is' : "1", 'best' : [8, 10], 'geek' : (10, 11, 2)} # printing original dictionary print("The original dictionary is : " + str(test_dict)) # initializing delims list_delim, tuple_delim = '-', '^' res = dict() for sub in test_dict: # checking data types if isinstance(test_dict[sub], list): res[sub] = list_delim.join([str(ele) for ele in test_dict[sub]]) elif isinstance(test_dict[sub], tuple): res[sub] = tuple_delim.join(list([str(ele) for ele in test_dict[sub]])) else: res[sub] = str(test_dict[sub]) # printing result print("The converted dictionary : " + str(res))
Producción:
El diccionario original es: {‘Gfg’: 4, ‘is’: ‘1’, ‘best’: [8, 10], ‘geek’: (10, 11, 2)}
El diccionario convertido: {‘Gfg’: ‘4’, ‘is’: ‘1’, ‘best’: ‘8-10’, ‘geek’: ’10^11^2′}
Publicación traducida automáticamente
Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA