在使用python时,导入是否必须有特定的顺序?

在使用python时,导入是否必须有特定的顺序?,python,matplotlib,python-import,Python,Matplotlib,Python Import,我在windows上玩python 2.7的matplotlib,我注意到一些非常奇怪的行为。我有一个小的脚本导入列表: import requests import json import numpy import datetime import time 我在列表末尾添加了import matplotlib.pyplot,它给了我以下错误: Traceback (most recent call last): File "C:\path\to\script\dataTesting.py

我在windows上玩python 2.7的
matplotlib
,我注意到一些非常奇怪的行为。我有一个小的脚本导入列表:

import requests
import json
import numpy
import datetime
import time
我在列表末尾添加了
import matplotlib.pyplot
,它给了我以下错误:

Traceback (most recent call last):
  File "C:\path\to\script\dataTesting.py", line 6, in <module>
    import matplotlib.pyplot
  File "C:\Python27\lib\site-packages\matplotlib\__init__.py", line 129, in <module>
    from six.moves.urllib.request import urlopen
ImportError: No module named urllib.request

这一次,它就像一个符咒。是不是有什么原因使它在第二次导入时在列表顶部工作,而不是第一次?python是否需要按特定顺序导入某些内容?我怎么才能弄清楚这个订单

urllib.request
对于Python2来说不是有效的
import
,您确定第一次不是用Python2调用,第二次不是用Python3调用吗?@Chris_Rands我确定。我实际上是在升华文本中运行它。我的sublime的默认版本是python 2。我如上所述更改了导入的顺序,并在sublime内部重新构建了它,它成功了。这很奇怪……你在两次尝试之间重新安装了六个吗?@tacaswell我真的不记得我是否在两次尝试之间重新安装了六个。有一次我认为这就是问题所在,我记得我试着重新安装了六个,但我相信那没有任何作用。而且这个问题仍然存在。我已经往回走了3到4次,将导入行移到顶部和底部。当它是第一行时,它工作正常,并且作为最后一个import语句,它以相同的错误中断
urllib。request
对于Python2来说不是有效的
import
,您确定第一次不是用Python2调用,第二次不是用Python3调用吗?@Chris_Rands我确定。我实际上是在升华文本中运行它。我的sublime的默认版本是python 2。我如上所述更改了导入的顺序,并在sublime内部重新构建了它,它成功了。这很奇怪……你在两次尝试之间重新安装了六个吗?@tacaswell我真的不记得我是否在两次尝试之间重新安装了六个。有一次我认为这就是问题所在,我记得我试着重新安装了六个,但我相信那没有任何作用。而且这个问题仍然存在。我已经往回走了3到4次,将导入行移到顶部和底部。当它是第一行时,它工作正常,并且作为最后一个import语句,它以相同的错误中断
import matplotlib.pyplot
import requests
import json
import numpy
import datetime
import time