2013-05-31 2 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

При вводе помощи (HTTP) в интерпретатор Python, он отвечает так:

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

Спасибо! это сработало! Странно это работало на моей машине братьев, как я сказал, поэтому я не думал, что это связано с кодом –

Смежные вопросы