很难找到这个问题的标题,希望这个帖子不是重复的。
我在Python 2.7(使用PyCharm 2016.2.2)中编写了一个长脚本用于项目,并决定将其拆分为不同的.py文件,然后我可以将其导入主文件。
不幸的是,似乎在代码中先前导入模块(例如numpy)并不意味着下面导入的.py文件会知道这一点。
我是python的新手,我想知道是否有一个简单的解决方法。
更清楚,这是我的代码的示例结构:
Main.py (用于运行脚本的文件):
clang++ -std=c++1z -Werror="unused-result"
basic.py :
import basic
numpy.random.seed(7)
import load_data
load_data.py :
import pandas
import numpy
etc...
Main.py 的第二行会导致错误“NameError:name'numpy'未定义”,这意味着在中导入的numpy basic.py 未传递给 Main.py 。
我猜在 load_data.py 中的代码会出现类似的错误,因为'pandas'不是定义的名称。
有什么想法吗?
感谢。
答案 0 :(得分:0)
numpy
中导入的basic.py
模块的引用仅定义为basic.py
范围。您必须在使用它的任何地方明确导入numpy
。
import basic.py
import numpy
numpy.random.seed(7)
import load_data.py