Python - De texto a un diccionario en Python

 
Vista:

De texto a un diccionario en Python

Publicado por Denisse Toro (2 intervenciones) el 30/11/2016 22:57:19
a = 12.03b = 1.16c = 4.20d = 4.82e = 13.93f = 0.62g = 1.09h = 1.12..... tengo un texto de esta manera desde la letra a hasta la z y me gustaria poder escribirlo en un diccionario de la siguiente forma: diccionario={"a":12.03, "b":1.16,"c":4.20.....} hasta la z. Pero no se como hacerlo:c
Muchisimas Graciaas!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip
Val: 1.120
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

De texto a un diccionario en Python

Publicado por kip (257 intervenciones) el 01/12/2016 03:58:43
Hola, he creado un codigo simple basandome en el string que colocaste, es decir en la cadena de donde quieres sacar el indice (key) del diccionario y su valor, aqui lo dejo:

1
2
3
4
5
6
import re
texto = 'a = 12.03b = 1.16c = 4.20d = 4.82e = 13.93f = 0.62g = 1.09h = 1.12';
dict = {}
for item in re.findall(r'(\w+)(?:\s*\=\s*)(\d+\.*\d+)', texto):
    dict.update({item[0]:item[1]})
print dict

Ten en cuenta que uso expresiones regulares para poder obtener la letra y su valor, en este caso solo servira con el formato como lo colocaste 'letra = nums (punto) nums' (a = 12.03) o 'letra = nums' (a = 123).

Si te funciona nos avisas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

De texto a un diccionario en Python

Publicado por Graciasss!! (2 intervenciones) el 01/12/2016 21:36:45
Primero, agradezco mucho la ayuda (: pero tengo el problema que los valores que les quiero asignar a las llaves quedan como string ( {'a': '12.03', 'c': '4.20', 'b': '1.16', 'e': '13.93', 'd': '4.82', 'g': '1.09', 'f': '0.62', 'h': '1.12'} ) yyyyy a demás, lo que quiero traspasar a diccionario es de un formato txt como un wordpad o algo asi... entonces, necesito ese importarlo y escribirlo como diccionario:c
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip
Val: 1.120
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

De texto a un diccionario en Python

Publicado por kip (257 intervenciones) el 01/12/2016 22:57:40
En el caso de tener un txt externo debes primero obtener el archivo como objeto de lectura con open() y con la funcion read() obtener el contenido de este, para tener en el diccionario los valores numericos como numeros que son y no cadenas, simplemente usa float(), intenta asi:

text.txt
1
2
3
4
5
6
7
8
a = 12.03
b = 1.16
c = 4.20
d = 4.82
e = 13.93
f = 0.62
g = 1.09
h = 1.12

CODIGO
1
2
3
4
5
6
import re
texto = open('text.txt', 'r').read();
dict = {}
for item in re.findall(r'(\w+)(?:\s*\=\s*)(\d+\.*\d+)', texto):
    dict.update({item[0]:float(item[1])})
print dict

Intentalo y nos cuentas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar