我有一個模塊,它定義了一個類,它從兩個(或更多)其他模塊中的一個實例化一個類。以下是幾個代碼示例。在第一個示例中,導入了兩個模塊,但只使用了一個模塊(每個MyIo實例一個)。在第二個示例中,僅導入所需的模塊。在更高級別的模塊中可能有一個或多個MyIo實例。Python體系結構 - 導入額外的模塊,或在代碼執行部分導入模塊?
我喜歡第二個例子只導入使用的內容,但我並不喜歡import
發生在'代碼執行'部分。
我的問題是:
- 其中的例子是一個更好的架構選擇,爲什麼?
- 導入的模塊最終是否使用了 是否有懲罰?
- Python中的代碼執行節中的導入是否被認爲是「不良格式?」
此示例導入兩個模塊,但僅使用一個...
''' MyIo.py '''
...
...
from DevSerial import Device as DeviceSerial
from DevUSB import Device as DeviceUSB
class MyIo:
def __init__(self, port)
if port.lower() == 'usb':
self.device=DeviceUSB()
else:
self.device=DeviceSerial(port)
...
...
以下僅導入正在使用的模塊...
''' MyIo.py '''
...
...
class MyIo:
def __init__(self, port)
if port.lower() == 'usb':
from DevUSB import Device
self.device=Device()
else:
from DevSerial import Device
self.device=Device(port)
...
...
是否有加載未使用模塊的資源損失(即內存)? –