2013-07-08 20 views
10

Ich habe ein Python-Skript mit nur diesen zwei Linien:Warum wird dieser Python-Code zweimal ausgeführt?

import requests 
print len(dir(requests)) 

Er druckt:

12 
48 

Wenn ich die aktuelle Liste drucken dir(requests), bekomme ich diese:

['__author__', '__build__', '__builtins__', '__copyright__', '__doc__', '__file__', '__license__', '__name__', '__package__', '__path__', '__title__', '__version__'] 
['ConnectionError', 'HTTPError', 'NullHandler', 'PreparedRequest', 'Request', 'RequestException', 'Response', 'Session', 'Timeout', 'TooManyRedirects', 'URLRequired', '__author__', '__build__', '__builtins__', '__copyright__', '__doc__', '__file__', '__license__', '__name__', '__package__', '__path__', '__title__', '__version__', 'adapters', 'api', 'auth', 'certs', 'codes', 'compat', 'cookies', 'delete', 'exceptions', 'get', 'head', 'hooks', 'logging', 'models', 'options', 'packages', 'patch', 'post', 'put', 'request', 'session', 'sessions', 'status_codes', 'structures', 'utils'] 

I Ich vermute, es gibt mehrere requests Module oder so ähnlich. Bitte helfen Sie.

+0

Was "tatsächliche Arrays" sind diese? Wann druckst du sie? Weitere Informationen, bitte. – kindall

+0

Hoppla. Die * list * wird von 'dir (requests)' zurückgegeben. Bearbeitet – Bruce

+0

Aber du machst das nur einmal. Unter welchen Umständen bekommen Sie jedes? – kindall

Antwort

13

Sie gaben Ihrem Skript den Namen eines Standardmoduls oder etwas anderes, das vom requests-Paket importiert wurde. Sie haben einen kreisförmigen Import erstellt.

yourscript -> import requests -> [0 or more other modules] -> import yourscript -> import requests again 

Da requests tat nicht komplette zum ersten Mal importieren Sie erhalten diese Unterschiede in der Liste der unterstützten Objekte zu sehen.

Tun Sie das nicht. Benennen Sie Ihr Skript in etwas anderes um und es wird alles funktionieren.

+1

Jesus. Es war 'http.py'. – Bruce

1

Erste ist Ihr eigenes Modul Zweitens ist Modul für den Umgang mit HTTP-Anfragen. Rename Ihr eigenes Modul

Verwandte Themen