我遇到了一個奇怪的python模塊導入問題。Python模塊導入差異「string.maketrans」
當我試圖導入boilerpipe模塊,
from boilerpipe.extract import Extractor
我得到這個異常:
Original exception was:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python2.7/dist-packages/boilerpipe-1.2.0-py2.7.egg/boilerpipe/extract/ __init__.py", line 2, in <module>
import urllib2
File "/usr/lib/python2.7/urllib2.py", line 94, in <module>
import httplib
File "/usr/lib/python2.7/httplib.py", line 1140, in <module>
import ssl
File "/usr/lib/python2.7/ssl.py", line 58, in <module>
import textwrap
File "/usr/lib/python2.7/textwrap.py", line 40, in <module>
class TextWrapper:
File "/usr/lib/python2.7/textwrap.py", line 82, in TextWrapper
whitespace_trans = string.maketrans(_whitespace, ' ' * len(_whitespace))
AttributeError: 'module' object has no attribute 'maketrans'
我已經搜查了互聯網和說,在Python 2.6的 'STR' 模塊已被重命名爲'string'模塊。所以這看起來像是代碼庫中的某個地方沒有正確導入「string」模塊。
然而,真正奇怪的是,當我從home
目錄運行Python代碼,並(通過使用python
殼或使用python pyfile.py
)運行相同的代碼,它工作正常!沒有更多的進口錯誤。
所以我有點混亂。任何人都可以給我任何提示嗎?
謝謝!
那麼是什麼使它不同於運行在其他目錄中的'home'目錄? – JXITC
你的主目錄沒有string.py。 –
是的...解決了我的問題。我犯了一個愚蠢的錯誤。乾杯! – JXITC