无法从特定的directoy运行Python脚本。可能是什么原因?

时间:2016-09-07 05:22:56

标签: python macos

1)OS = MacOS(El Capitan)

2)使用本机Python安装

3)问题:我在名为" pythonscripts"的目录中写了一个脚本。这不会从此目录运行。如果我将相同的脚本复制到上面的目录,或者下面的目录或者用户的主目录中,它运行得很好。我尝试过各种各样的事情,包括重命名" pythonscripts"其他名字,我不知道。

提示赞赏。在我的测试输出下面看看你自己......

MAC:pythonscripts user1$ cp googlemaps1.py ~
MAC:pythonscripts user1$ cp googlemaps1.py ../
MAC:pythonscripts user1$ cp googlemaps1.py Learning-Python/
MAC:pythonscripts user1$ 
MAC:pythonscripts user1$ cd ../
MAC:coding user1$ python googlemaps1.py 
directions_result: <type 'list'> 1
PERFECT EXECUTION!
MAC:coding user1$ cd pythonscripts/Learning-Python/
MAC:Learning-Python user1$ python googlemaps1.py 
directions_result: <type 'list'> 1
PERFECT EXECUTION!
MAC:Learning-Python user1$ cd ..
MAC:pythonscripts user1$ python googlemaps1.py 
{'and': 3, 'envious': 1, 'already': 1, 'fair': 1, 'is': 3, 'through': 1, 'pale': 1, 'yonder': 1, 'what': 1, 'sun': 2, 'Who': 1, 'But': 1, 'moon': 1, 'window': 1, 'sick': 1, 'east': 1, 'breaks': 1, 'grief': 1, 'with': 1, 'light': 1, 'It': 1, 'Arise': 1, 'kill': 1, 'the': 3, 'soft': 1, 'Juliet': 1}
Traceback (most recent call last):
  File "googlemaps1.py", line 8, in <module>
    from googlemaps import Client
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/googlemaps/__init__.py", line 20, in <module>
    from googlemaps.client import Client
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/googlemaps/client.py", line 30, in <module>
    import requests
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/__init__.py", line 64, in <module>
    from . import utils
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/utils.py", line 24, in <module>
    from .compat import parse_http_list as _parse_list_header
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/requests/compat.py", line 38, in <module>
    from urllib2 import parse_http_list
ImportError: cannot import name parse_http_list
MAC:pythonscripts user1$ cd 
MAC:~ user1$ python googlemaps1.py 
directions_result: <type 'list'> 1
PERFECT EXECUTION!
MAC:~ user1$ 

这让我抓狂!正如您所看到的,除了保存脚本的原始目录之外,我可以从其他3个位置运行相同的脚本。 有任何想法吗?以前有人经历过这样的事吗? 谢谢,

1 个答案:

答案 0 :(得分:0)

如果您有一个名为urllib2.py的文件,则必须重命名该文件。 你永远不应该像python包/模块那样命名脚本。