SORU
24 Temmuz 2009, Cuma


Python sınıf nesnesi için bir dize dönüştürmek?

Python bir işlev için Kullanıcı girdi olarak bir dize verilen, şu anda tanımlı bir ad, bu adı taşıyan bir sınıf varsa bunun dışında bir sınıf nesnesi elde etmek istiyorum. Aslında, bu tip bir sonuç üretecek bir işlev için uygulanmasını istiyorum

class Foo:
    pass

str_to_class("Foo")
==> <class __main__.Foo at 0x69ba0>

Bu mümkün mü?

CEVAP
24 Temmuz 2009, Cuma


Bu işe yarayabilir:

import sys

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

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jared Busch

    Jared Busch

    25 Mayıs 2011
  • MultiPlayStationMan

    MultiPlaySta

    17 Aralık 2009
  • Troy Hunt

    Troy Hunt

    29 EYLÜL 2011