2013-05-31 47 views
1

我有一個非常奇怪的python內置http模塊的問題。它成功導入,但http.client屬性不存在? 它是在python文檔中,我的兄弟完美地運行代碼。它不適用於我,雖然我的Linux筆記本電腦或我的Mac! 一直有這個問題一兩天了,真的需要它修復!找不到模塊屬性,即使它存在

確切的錯誤信息是:

except (http.client.ResponseNotReady, http.client.CannotSendRequest, http.client.BadStatusLine) as e: 
AttributeError: 'module' object has no attribute 'client' 

當刪除此外,還有剛剛在這個文件中更多的人,所以我不能只是簡單刪除例外反正

,因爲我可以找不到這個問題的根源,我開始探查http模塊文件夾並找到client.py

在python解釋器中輸入help(http)時,它響應:

PACKAGE CONTENTS 
    client 
    cookiejar 
    cookies 
    server 

FILE 
    /opt/local/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/http/__init__.py 

那麼,我知道幫助命令信息是自動生成的,而這些包可能已被刪除或什麼。所以我去了HTTP目錄,並做了「ls -l命令」給我這樣的:

-rw-r--r-- 1 root wheel  38 6 Apr 21:29 __init__.py 
drwxr-xr-x 12 root wheel 408 4 May 21:29 __pycache__ 
-rw-r--r-- 1 root wheel 44644 6 Apr 21:29 client.py 
-rw-r--r-- 1 root wheel 75973 6 Apr 21:29 cookiejar.py 
-rw-r--r-- 1 root wheel 20360 6 Apr 21:29 cookies.py 
-rw-r--r-- 1 root wheel 44788 6 Apr 21:29 server.py 

有我一直在尋找的client.py!它甚至有很多代碼,所以不能訪問?

也不可能試圖在python解釋器中訪問它!

>>> import http 
>>> http.client 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
AttributeError: 'module' object has no attribute 'client' 

在此先感謝!

+0

什麼版本的python? – Noelkd

回答

4

您導入http。但是您是否還輸入http.client

這是必要的,因爲如果子模塊是否被導入,它取決於包的__init__.py

+2

有趣的是,他有這個問題好幾天了,在他問這個問題30秒後他得到了正確答案。 –

+0

謝謝!有效! 奇怪的是,它在我的兄弟機器上工作,因爲我說,所以我不認爲它與代碼有關 –

相關問題