[Python-es] Cadena "a=1 b = 2" a diccionario
Oswaldo Hernández
listas en soft-com.es
Vie Mar 12 12:32:49 CET 2010
Arnau Sanchez escribió:
> On 12/03/10 11:54, Oswaldo Hernández wrote:
>
>> "dbname=bd user = usuario host= 192.168.22.5"
>>
>> Quiero convertirla a diccionario de forma que quede:
>> {"dbname":"bd", "user":"usuario", "host":"192.168.22.5"}
>>
>> Lo estoy haciendo de una forma bastante burda: elimino espacios a los
>> lados del signo '=', luego separo los pares con split, ...
>
> A falta de ver el código, yo diría que es lo suficientemente pythonica.
>
>> Me gustaría hacerlo de una forma mas pythonica. Estoy intentando hacerlo
>> con expresiones regulares pero me temo que regex no es mi fuerte
>
> Yo empezaría a jugar con algo así:
>
> dict(re.findall("(\S+)\s*=\s*(\S+)", s))
Funciona perfectamente!!!, Magia!!!, algún dia me tendrás que explicar
que significa :)
Gracias.
--
Oswaldo Hernández
Más información sobre la lista de distribución Python-es