在python中导入请求会出现错误

在python中导入请求会出现错误,python,python-2.7,python-requests,Python,Python 2.7,Python Requests,我有一个小型python(2.7)脚本,可以与多个线程一起工作。其中一个线程将读取一个全局列表,并为此列表的每个条目发布https post请求 为此,我发现最好的方法是使用python请求模块。我已经用pip安装了它(没问题,它放在…Python/2.7/site packages/requests/…),但是,当我在脚本中导入这个模块时,我得到了一个错误 我用一行(导入请求)创建了另一个脚本来重现错误,结果如下: Traceback (most recent call last): Fi

我有一个小型python(2.7)脚本,可以与多个线程一起工作。其中一个线程将读取一个全局列表,并为此列表的每个条目发布https post请求

为此,我发现最好的方法是使用python请求模块。我已经用pip安装了它(没问题,它放在…Python/2.7/site packages/requests/…),但是,当我在脚本中导入这个模块时,我得到了一个错误

我用一行(导入请求)创建了另一个脚本来重现错误,结果如下:

Traceback (most recent call last):
  File "req.py", line 1, in <module>
    import requests
  File "/Library/Python/2.7/site-packages/requests/__init__.py", line 43, in <module>
    import urllib3
  File "/Library/Python/2.7/site-packages/urllib3/__init__.py", line 8, in <module>
    from .connectionpool import (
  File "/Library/Python/2.7/site-packages/urllib3/connectionpool.py", line 11, in <module>
    from .exceptions import (
  File "/Library/Python/2.7/site-packages/urllib3/exceptions.py", line 2, in <module>
    from .packages.six.moves.http_client import (
  File "/Library/Python/2.7/site-packages/urllib3/packages/six.py", line 203, in load_module
    mod = mod._resolve()
  File "/Library/Python/2.7/site-packages/urllib3/packages/six.py", line 115, in _resolve
    return _import_module(self.mod)
  File "/Library/Python/2.7/site-packages/urllib3/packages/six.py", line 82, in _import_module
    __import__(name)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 69, in <module>
    from array import array
  File "/Users/carlestalenssebastia/Documents/mychip/raspberry pi/array.py", line 3, in <module>
IndexError: list index out of range
回溯(最近一次呼叫最后一次):
文件“req.py”,第1行,在
导入请求
文件“/Library/Python/2.7/site packages/requests/_init__uu.py”,第43行,在
导入urllib3
文件“/Library/Python/2.7/site-packages/urllib3/_-init___.py”,第8行,在
from.connectionpool导入(
文件“/Library/Python/2.7/site packages/urllib3/connectionpool.py”,第11行,在
从。例外导入(
文件“/Library/Python/2.7/site packages/urllib3/exceptions.py”,第2行,在
从.packages.six.moves.http_客户端导入(
文件“/Library/Python/2.7/site packages/urllib3/packages/six.py”,第203行,在load_模块中
mod=mod.\u resolve()
文件“/Library/Python/2.7/site packages/urllib3/packages/six.py”,第115行,在
返回导入模块(self.mod)
文件“/Library/Python/2.7/site packages/urllib3/packages/six.py”,第82行,在导入模块中
__导入(名称)
文件“/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py”,第69行,在
从数组导入数组
文件“/Users/carlestalenssebastia/Documents/mychip/raspberry pi/array.py”,第3行,在
索引器:列表索引超出范围
Python 2.7.10 MacBook Pro与macOS Sierra(10.12版)


我做错什么了吗?我不是用正确的方式安装了模块吗?

看起来您有两个同名的模块
array.py
将本地
array.py
模块重命名为更独特的模块以解决此问题


查看answer,了解有关如何处理此问题的更多信息,并了解python导入系统如何工作的更多信息。

您需要重命名文件夹raspberry pi中名为
array.py的文件,这会产生冲突欢迎使用SO:一般来说,您不应该将模块命名为与python提供的模块相同的名称……它会创建冲突。如果必须的话,试试类似于
my_array
的东西,或者更好的更具描述性的东西。天哪****。我甚至没有创建那个文件,可能是安装某个东西时出错了。此外,它是一个.pyc文件,显然不是我创建的(至少不是故意创建的)。谢谢你们。是的,我有一个array.pyc文件(我不知道它是如何创建的),并且在我使用的文件编辑程序中它被隐藏了。一旦我在终端中检查它,我就删除了它并成功地进行了。PS:+1用于链接到关于python模块导入系统的小说明