2016-03-04 78 views
1

每當我執行下面的腳本執行: https://bitbucket.org/pedro_stanaka/flock-log-parser/src/1340cdb7f873f158d3778aec445e4e37ee5f2a32/main.py?fileviewer=file-view-defaultPython - 腳本在一個文件夾中執行時引發錯誤。但不是當另一

在其原文件夾(因爲它是在項目中)我得到以下錯誤:

Traceback (most recent call last): 
    File "main.py", line 7, in <module> 
    from matplotlib.backends.backend_pdf import PdfPages 
[...] 
File "/usr/lib/python3.4/unittest/case.py", line 253, in <module> 
class _CapturingHandler(logging.Handler): 
AttributeError: 'module' object has no attribute 'Handler' 

但是當我複製腳本(和腳本)到我的電腦中的另一個文件夾,並使用它工作的同一命令行運行它。

python3.4 main.py 

爲什麼會發生這種情況?對此行爲有沒有任何解釋? 我非常想保持相同的文件夾/項目。

我試圖設置PYTHONPATH,但它不工作。

+0

你有一個名爲'logging.py'的文件坐在同一個目錄下嗎? – wim

+1

哦,我的上帝!我正在經歷糟糕的日子!就是這樣。我從來沒有見過那個文件夾!謝謝。使這個評論一個答案,我會接受。 – PedroTanaka

+0

我實際上有一套工具,我不能在兩個單獨的目錄中使用,因爲Python字符串庫有一個「編解碼器」模塊,所以這些文件夾... – iAdjunct

回答

1
class _CapturingHandler(logging.Handler): 
AttributeError: 'module' object has no attribute 'Handler' 

Python的logging模塊總會有這個屬性Handler,所以我猜你有一個名爲logging.py另一個文件在同一目錄遊逛。將該模塊重命名爲與核心模塊不衝突的其他名稱。

相關問題