如何將字串轉換為 Python 類物件?


如果當前已定義名稱空間中存在類,那麼如果將字串作為使用者輸入傳遞到 Python 函式 中,我們希望能從中獲得一個類物件。

示例

class Foobar:
    pass
print eval("Foobar")
print type(Foobar)

輸出

 __main__.Foobar
<type 'classobj'>

將字串轉換為類物件的另一種方法如下

示例

import sys
class Foobar:
    pass
def str_to_class(str):
    return getattr(sys.modules[__name__], str)
print str_to_class("Foobar")
print type(Foobar)

輸出

__main__.Foobar
<type 'classobj'>

更新於: 09-Sep-2023

11K+ 瀏覽量

啟動你的職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.