Python 中 NameError: name ‘array’ is not defined 错误

Python“NameError: name ‘array’ is not defined”发生在我们使用 array 模块而不先导入它时。 要解决该错误,需要在使用前从数组模块导入 – from array import array。 如果使用 numpy,访问 numpy 模块上的数组,例如 np.array。

下面是一个产生上面错误的示例代码

# ⛔️ NameError: name 'array' is not defined
arr = array('l', [1, 2, 3])

print(arr)

Python 中 NameError: name 'array' is not defined 错误

为了解决这个错误,我们必须从数组模块中导入 array 类。

# ✅ import array class from array module first
from array import array

arr = array('l', [1, 2, 3])

print(arr)

如果我们使用 numpy 模块,请在导入后访问模块上的 array。

# ✅ import numpy
import numpy as np

# ?️ access array on np module
arr = np.array([1, 2, 3])

print(arr)

即使 array 模块在Python标准库中,我们仍然需要在使用前导入它。

确保在导入数组时没有使用大写字母 a,因为模块名称区分大小写。

另外,请确保我们没有在嵌套范围内导入数组,例如 一个函数。 在顶层导入模块,以便能够在整个代码中使用它。

array 模块定义了一个对象类型,它可以紧凑地表示一个值数组。

数组与列表非常相似,除了其中存储的对象类型是受限制的,例如 字符串、整数或浮点数。

如果不需要限制存储在序列中的对象类型,请改用 Python 列表。

my_list = [1, 2, 3]

print(my_list)

可以通过访问我们的python教程来阅读有关数组模块的更多信息。