[英]Top level imports supersede lower level imports?
在一個 jupyter 筆記本中,我有
import modin.pandas as pd
import utils
utils.py
有import pandas as pd
utils.py
中的pd
是否導入pandas
或modin.pandas
? 如果是前者,我有沒有辦法讓utils.py
使用modin.pandas
筆記本中的 modin.pandas,而無需在utils.py
的代碼中更改它
utils
模塊將始終將pandas as pd
,即使您在另一個模塊中將modins.pandas as pd
,在另一個模塊中使用utils
模塊也不會改變這一點。 這是因為符號pd
與模塊字典相關聯,而這個模塊字典與另一個模塊的字典是隔離的,這本質上代表了不同模塊具有不同命名空間的核心思想。
在utils
中使用modins.pandas
的方法是更新符號pd
。 您可以通過使用setattr
方法將舊符號替換為新符號來輕松完成此操作:
import modin.pandas as pd
import utils
setattr(utils, 'pd', pd)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.