簡體   English   中英

如何在Python中更改類的模塊?

[英]How to change module of a class in Python?

module1具有funcion make_class。 module2這樣調用:

Foo = make_class('Foo')

或這個:

setattr(sys.modules[__name__], 'Foo', make_class('Foo'))

但是無論哪種情況,我們都有<class 'module1.Foo'>如何將此類分配給module2: <class 'module2.Foo'>嗎? (我需要這個來滿足SQLAlchemy的要求)

Foo.__module__ = __name__

顯式更改模塊名稱。 如果讓新類的__module__屬性帶有模塊名稱參數,則可以使make_class函數處理此問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM