2010-04-16 81 views
5

我給出了一個模塊作爲對象,我需要從中導入一個子模塊。就像這樣:導入給定模塊對象的子模塊

import logging 
x = logging 

現在我想只用x而不是名稱爲「記錄」導入logging.handlers。 (這是因爲我正在做一些動態導入,不知道模塊的名稱。)

我該如何做?如果我做import x.handlers它失敗。

回答

5

嘗試:

__import__('%s.handlers' % x.__name__) 

注意,這將會參考返回logging,這你可能不會在意。但它會創建x.handlers

+0

我在想,爲什麼從模塊對象導入不起作用,它似乎應該是合理的。是否有一個特定的原因,你知道爲什麼它不? – 2013-02-25 11:42:30