python - 将 Numpy 导入函数

标签 python numpy python-import

我不知道导入模块的正确方法。

我有一个主文件,用于初始化代码、进行一些初步计算等。 我还有 5 个函数 f1、f2、... f5。主要代码和所有功能都需要 Numpy。

如果我在主文件中定义所有函数,代码运行良好。 (导入:import numpy as np)

如果我将函数放在一个单独的文件中,我会得到一个错误:
错误:未定义全局名称“linalg”。

导入模块以使函数 f1 - f5 可以访问 Numpy 功能的正确方法是什么?

最佳答案

正如其他答案所说,您需要将 numpy 导入到调用 Numpy 函数的每个文件中。但是,如果您不在主模块中使用它,则无需将其导入主模块。这是一个简单的例子。假设你有一个名为 myFunc.py 的文件,其中包含你的函数 我的函数.py:

import numpy as np

def f1(a):  # a is a numpy multidimensional array
    z = np.array(a)
    flat = z.ravel()
    flat = flat.tolist()

    return flat     

然后在你的主文件中你可以做这样的事情

import myFunc as mf

mf.f1([[4,67,8],[7,9,7]])

您的输出将是:

[4, 67, 8, 7, 9, 7]

所以你将一个列表传递给你的函数,在你的函数中将它转换为一个 numpy 数组,然后将答案作为一个列表返回。如果你返回一个 numpy 数组,你会得到一个错误。

关于python - 将 Numpy 导入函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11788950/

相关文章:

Python:带有 if 语句的 numpy where 命令

Python - 计算图像的直方图

python - 类型错误 : cannot concatenate a ninNDFrame object while trying to concat

python - 添加 URL 参数以在 flask 中形成 Action

python - 使用 PyCharm 调试器运行 Flask CLI 命令

python - 如何克服python中的缩进错误?

python - 这两个python导入方法完全一样吗?

python - 为什么我不能在 emacs 中对 python 模块使用自动完成

python - 使用 importlib.import_module 处理导入模块引发的异常

python - 如何将目录导入为python模块