[pyar] convertir de string a bool
Roberto Alsina
ralsina en netmanagers.com.ar
Vie Ago 20 18:30:07 ART 2010
On Friday 20 August 2010 16:49:34 Mario Colque wrote:
> 2010/8/20 Roberto Alsina <ralsina en netmanagers.com.ar>:
> > On Friday 20 August 2010 16:30:14 Mario Colque wrote:
> >> bueno, me auto-respondo.. jeje justo encontré algo[1] que me sirve
> >>
> >> utilizando eval() ya que haciendo:
> >>
> >> eval("True") me devuelve True en booleano
> >>
> >> y haciendo eval("False") me devuelve False en booleano también
> >>
> >> [1]
> >> http://mail.python.org/pipermail/python-dev/2007-February/071335.html
> >>
> >> gracias de todas formas!
> >
> > Y si el string dice "import os; import os.sistem( 'rm -rf /')" que hace?
> >
> > El error en system es intencional ;-)
> > _______________________________________________
> > pyar mailing list pyar en python.org.ar
> > http://listas.python.org.ar/listinfo/pyar
> >
> > PyAr - Python Argentina - Sitio web: http://www.python.org.ar/
>
> muy buena acotación!
> La verdad que por problemas de seguridad es un poco más complejo...
>
> mi problema venía al utilizar el módulo ConfigParser, ya que hacia:
>
> a = config.get("User settings", "status")
>
> por ende, en a tenia un True o un False (dependiendo del archivo
> leído) pero en string, y para convertirlo a bool intenté hacerlo con
> los métodos que se mencionaron antes.
> Pero leyendo la documentación, encontré la forma correcta de hacerlo,
> utilizando:
>
> a = config.getboolean("User settings", "status")
>
> supongo que con eso evitaría los problemas de seguridad y tener que
> armar funciones extras...
Te cuento lo que hago yo:
a = json.loads(config.get("user settings","status"))
Y cuando lo guardo:
config.put("user settings","status",json.dumps(a))
Perdon si hay algun error en la sintaxis, lo estoy poniendo de memoria.
Ventaja: siempre vuelve con el tipo correcto
Desventaja: el archivo de configuracion es ligeramente menos editable, y no
podés guardar cualquier cosa, sino tipos "simples".
More information about the pyar
mailing list