我有一个 util.py
文件。
其中有一个函数func
:
import pandas as pd
import numpy as np
def delete_columns(data, columns):
"""
Deletes all columns in data
"""
for column in columns:
del data[column]
如果我将它导入到我的 jupyter 笔记本中并实现它 - 一切都很好。
但是我决定制作另一个调用 util
的 util2
:
import numpy as np
from util import *
def clean(data):
data = data[np.isfinite(data.lol)]
delete_columns(data=data, columns= ['1','2','3'])
并且现在,当我从 jupyter 调用它时,它以以下内容结束:
----> 7 from user_functions import *
8 def clean_1(data):
9 data = data[np.isfinite(data.lol)]
NameError: name 'np' is not defined
怎么了?每个文件导入所有模块!
最佳答案
您应该在使用它的模块中导入np
,将您的util.py
更改为:
import numpy as np
def func(l):
a = np.array(l)
return a
更新:确保安装了 python3 的 numpy(打开 python3 解释器(确保它是 python3)并导入 numpy 看看它是否有效(还要确保 jupiter 使用 python 3)
关于python - 导入的py文件找不到它使用的模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43417132/