[英]Error when running random_forest_example.py in spark with python
[英]Error when running dropbox.py
test@SERVER:~/source/dropbox/.dropbox-dist$ ./dropbox.py
Traceback (most recent call last):
File "./dropbox.py", line 39, in <module>
import urllib
File "/usr/lib/python2.6/urllib.py", line 30, in <module>
from urlparse import urljoin as basejoin
File "/usr/lib/python2.6/urlparse.py", line 84, in <module>
from collections import namedtuple
ImportError: cannot import name namedtuple
dropbox.py有755個燙發。 在系統中我有2
, 2.6
版本的python。 運行python2 dropbox.py
或python2.6 dropbox.py
發出同樣的錯誤。
這是來自Dropbox網站的dropbox.py文件
每條評論更新:
test@SERVER:~/source/dropbox/.dropbox-dist$ python2.6
Python 2.6.5 (r265:79063, Apr 16 2010, 13:57:41)
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from collections import namedtuple
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name namedtuple
>>>
看起來你的Python路徑中有另一個名為collections
模塊(可能是collections.py
但也可能是一個名為collections
的文件夾,里面有__init__.py
),這阻止了Python 2.6 collections
模塊的導入。 當你調用Python時,可能是當前目錄中的某些內容 - 請先檢查一下。 否則試試python26 -c 'import sys; print sys.path'
python26 -c 'import sys; print sys.path'
查看Python在哪里尋找模塊。
@kindall是對的。 .dropbox-dist文件夾包含collections.so
,它會干擾dropbox.py腳本。 將文件移動到其他文件夾。 這是一種方式:
mkdir cli
mv dropbox.py cli/dropbox.py
cd cli
./dropbox.py --help
你能試試嗎?
python -c 'import collections; print collections.__file__'
並確保路徑為/usr/lib/python2.6/collections.pyc
。 如果沒有,那么你的PYTHONPATH中有另一個模塊可以替換這個模塊。 如果是,那么再試一次:
python -c 'import collections; print dir(collections)'
並告訴我們結果。
通常,namedtuple已被引入2.6所以...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.