Programa de Python para dividir la string y convertirla en diccionario

Dado un delimitador (indicado como delim en el código) string separada, ordene las divisiones en forma de diccionario.

Ejemplos:

Entrada : test_str = ‘gfg*is*best*for*geeks’, delim = “*” 
Salida : {0: ‘gfg’, 1: ‘is’, 2: ‘best’, 3: ‘for’, 4: ‘frikis’} 
 

Entrada : test_str = ‘gfg*is*best’, delim = “*” 
Salida : {0: ‘gfg’, 1: ‘is’, 2: ‘best’} 
 

Método 1: Usar split() + loop

Esta es una forma bruta en la que se puede realizar esta tarea. En esto, las secciones divididas se almacenan en una lista temporal usando split() y luego se crea el nuevo diccionario a partir de la lista temporal.

Python3

# Using split() + loop
 
# initializing string
test_str = 'gfg_is_best_for_geeks'
 
# printing original string
print("The original string is : "
      + str(test_str))
 
# initializing delim
delim = "_"
 
# splitting using split()
temp = test_str.split(delim)
 
res = dict()
 
# using loop to reform dictionary with splits
for idx, ele in enumerate(temp):
    res[idx] = ele
 
# printing result
print("Dictionary after splits ordering : "
      + str(res))

Producción:

La string original es: gfg_is_best_for_geeks 
Diccionario después de dividir el orden: {0: ‘gfg’, 1: ‘is’, 2: ‘best’, 3: ‘for’, 4: ‘geeks’}

Método 2: usar la comprensión del diccionario + dividir() + enumerar()

Este es un método abreviado con la ayuda del cual se puede realizar esta tarea. En esto, realizamos la tarea de reconstrucción del diccionario usando un diccionario de una sola línea ( comprensión del diccionario ) y enumerate()  se usa para ayudar en el pedido.

Python3

# Using dictionary comprehension + split() + enumerate()
 
# initializing string
test_str = 'gfg_is_best_for_geeks'
 
# printing original string
print("The original string is : "
      + str(test_str))
 
# initializing delim
delim = "_"
 
# using one liner to rearrange dictionary
res = {idx: ele for idx, ele in
       enumerate(test_str.split(delim))}
 
# printing result
print("Dictionary after splits ordering : "
      + str(res))

Producción:

La string original es: gfg_is_best_for_geeks 
Diccionario después de dividir el orden: {0: ‘gfg’, 1: ‘is’, 2: ‘best’, 3: ‘for’, 4: ‘geeks’}

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *