2017-06-16 67 views
1

我想制作两个程序。我希望打印当前居住城市的天气,并且希望另一个人从在线帐户获取数据并将其返回。对于这些脚本,我导入yweather模块和请求模块。当我在shell中导入它们时没有问题,但是当我运行脚本时,它会显示“ImportError:No module named yweather”。我究竟做错了什么?为什么python模块在shell而不是在脚本中工作?

壳牌:

>>> import requests 
>>> 

脚本:

Traceback (most recent call last): 
    File "/Users/tim/Desktop/login.py", line 1, in <module> 
    import requests 
ImportError: No module named requests 

这也恰好为yweather模块

谢谢

+0

您确定在这两种情况下使用的是相同的解释器吗? – deceze

+0

您确定在运行脚本和提示时使用相同的Python版本吗? – trojek

+0

向我们展示脚本的第一行。 – sphere

回答

0

你确定这是Python的相同版本的?尝试在shell和脚本中运行以下内容,比较结果。

import sys 
sys.version 

如果它们不相同,则会安装两个版本。

+0

他们都返回相同。但在尝试了几件事情之后,我发现使用终端时可以毫无问题地运行脚本。 –

0

也许你在脚本中使用虚拟环境,并且模块没有安装在那里。

0

如果你在Windows上,你可能已经安装了两次Python。你是否用Anaconda安装Python并独立安装Python?

当您在命令提示符下键入Python时,是否会得到与解释器中相同的Python版本?

如果是,则进入系统面板并删除在命令提示符下运行的Python版本的程序。

否则,你可以查阅一下PYTHONPATH您使用在命令提示符:

echo %PATH% 

如果在Python解释器固定不同的方法之一:

import sys 
sys.path.append('your certain directory') 

或者你也可以设置一个在命令提示符下的新路径:

setx PATH "%PYTHONPATH%;C:\python27" 

希望这会有所帮助

相关问题