首页 > 解决方案 > 无法在 Python 中导入数组库

问题描述

所以最近开始学习Python,现在一直在尝试学习数组,但是导入数组库后无法使用数组函数。

我尝试了四种不同的方法来使用数组函数,但都失败了。

方法一:

import array
nums = array.array('i', [])
#rest of the code

输出 1:

Traceback (most recent call last):
File "array.py", line 2, in <module>
import array
File "/home/prince/Desktop/python-basics/array.py", line 
4, in <module>
nums = array.array('i', [])
TypeError: 'module' object is not callable

方法二:

import array as a
nums = a.array('i', [])
#rest of the code

输出 2:

Traceback (most recent call last):
File "array.py", line 2, in <module>
import array as a
File "/home/prince/Desktop/python-basics/array.py", line 
4, in <module>
nums = a.array('i', [])
AttributeError: partially initialized module 'array' has 
no attribute 'array' (most likely due to a circular 
import)

方法三:

from array import array
nums = array('i', [])
#rest of the code

输出 3:

Traceback (most recent call last):
File "array.py", line 2, in <module>
from array import array
File "/home/prince/Desktop/python-basics/array.py", line 
2, in <module>
from array import array
ImportError: cannot import name 'array' from partially 
initialized module 'array' (most likely due to a circular 
import) (/home/prince/Desktop/python-basics/array.py)

方法四:

from array import *
nums = array('i', [])

输出 4:

Traceback (most recent call last):
File "array.py", line 2, in <module>
from array import *
File "/home/prince/Desktop/python-basics/array.py", line 
4, in <module>
nums = array('i', [])
NameError: name 'array' is not defined

编译后,每次在我的目录中自动创建另一个文件夹,其名称为:pycache

在该文件夹中有一个名为:array.cpython-38.pyc的文件,我无法打开它。我的编辑说这是因为它使用二进制或不受支持的文本。

如果有帮助,请提供一些其他详细信息:

我使用的文本编辑器: VS Code

我的操作系统: Ubuntu 20.04LTS

Python版本: 3.8.5

标签: pythonarraysubuntuvisual-studio-codeimport

解决方案


由于文件名与您导入的模块名称相同,上述所有导入均失败。很确定您不能与您尝试导入的模块具有相同的名称。尝试将文件名重命名为array.py其他名称,它应该可以工作。

关于 pycache 文件夹,它包含 python 程序的编译字节码。这应该与这个问题无关。


推荐阅读