Python 模块无法识别全局别名
Python module does not recognize global alias
与我的项目 main 相同目录中的一个包有一个模块需要引用 "well-known" 模块,例如 pandas。但是,该模块无法识别 pandas.
供参考,我是运行python3.7.3.
这是我设置的目录:
test/
main.py
package1/
__init__.py
module.py
这是文件 main.py
:
import pandas as pd
from package1.module import my_series
print(my_series([1,2,3]))
而 module.py
包含
def my_series(list1):
return(pd.Series(list1))
我希望输出是与此列表关联的系列:
0 1
1 2
2 3
但是,我得到了错误
Traceback (most recent call last):
2 || File "main.py", line 5, in <module>
3 || print(my_series([1,2,3]))
4 || File "/Users/awray_mac/Documents/test/package1/module.py", line 2, in my_series
5 || return(pd.Series(list1))
6 || NameError: name 'pd' is not defined
这是怎么回事?让像这样的子模块引用已经从主文件导入的 pandas 包的正确方法是什么?
您需要在 package1/module.py
中导入 pandas,如下所示:
import pandas as pd
import pandas as pd
在 module.py 文件中
与我的项目 main 相同目录中的一个包有一个模块需要引用 "well-known" 模块,例如 pandas。但是,该模块无法识别 pandas.
供参考,我是运行python3.7.3.
这是我设置的目录:
test/
main.py
package1/
__init__.py
module.py
这是文件 main.py
:
import pandas as pd
from package1.module import my_series
print(my_series([1,2,3]))
而 module.py
包含
def my_series(list1):
return(pd.Series(list1))
我希望输出是与此列表关联的系列:
0 1
1 2
2 3
但是,我得到了错误
Traceback (most recent call last):
2 || File "main.py", line 5, in <module>
3 || print(my_series([1,2,3]))
4 || File "/Users/awray_mac/Documents/test/package1/module.py", line 2, in my_series
5 || return(pd.Series(list1))
6 || NameError: name 'pd' is not defined
这是怎么回事?让像这样的子模块引用已经从主文件导入的 pandas 包的正确方法是什么?
您需要在 package1/module.py
中导入 pandas,如下所示:
import pandas as pd
import pandas as pd
在 module.py 文件中