0

我是 pandas 库的重度用户。为了保留与 pandas 库相关的有用的自定义辅助函数,我决定在其中创建一个自定义项目 (my_proj) 和一个模块 pandas.py。现在我正在同一个项目中开发另一个与 ssh 协议相关的自定义模块。

模块是用 pycharm 创建的。项目结构如下:

my_proj/src/my_proj/pandas.py
my_proj/src/my_proj/ssh.py

一切正常并且工作正常。当我想使用我执行的站点包的熊猫import pandas as pd时,当我想使用 my_proj 熊猫时,我使用from my_proj import pandas as mypd.

但是,现在在 ssh.py 中,我需要站点包的熊猫(不是 my_proj 熊猫)。如果我在 ssh.py 中使用,pycharm会从站点包中import pandas as pd导入而不是 pandas。my_proj/src/my_proj/pandas.py

一种解决方案是将 my_proj 的 pandas.py 重命名为其他名称,但如果可能的话,我想避免这种情况。

是否有其他选项可以防止从当前目录加载库并将其从站点包中导入?

我有哪些选择?

4

2 回答 2

2

最后,我将使用以下过程:

import sys
old_syspath = sys.path
sys.path = [path for path in sys.path if 'customspace' not in path]

import pandas as pd
sys.path = old_syspath

基本上,我从 sys.path 中删除了“customspace”,而不是导入 pandas 并将 sys.path 恢复原样。

我认为这是最小的变化并且它正在工作。

于 2020-01-18T19:09:45.420 回答
1

我认为您可以准确地告诉 python 从哪个目录中提取 pandas。EX 从 my_proj/src/my_proj/ssh 导入熊猫。

于 2020-01-18T17:14:49.130 回答