Saltar al contenido

Convertir string al objeto de la clase Python?

Este post ha sido aprobado por nuestros especialistas para garantizar la veracidad de nuestra esta división.

Solución:

Esto podría funcionar:

import sys

def str_to_class(classname):
    return getattr(sys.modules[__name__], classname)

Advertencia: eval() se puede utilizar para ejecutar código Python arbitrario. Debería nunca usar eval() con cadenas no confiables. (Ver ¿Seguridad de Python’s eval () en cadenas no confiables?)

Esto parece lo más simple.

>>> class Foo(object):
...     pass
... 
>>> eval("Foo")

Podrías hacer algo como:

globals()[class_name]

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)


Tags : /

Utiliza Nuestro Buscador

Deja una respuesta

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