2017-11-14 23 views
-1

私はWindows 10でPython 3.6.3を実行しており、pipによってリクエストをインストールしています。リクエストをインポートするとprint()が2回印刷されます

#!python 
import requests 
print('Hello') 

PowerShellとコマンドプロンプトで「Hello」印刷を2回実行します。要求をインポートしないと、印刷は正常に動作します。

Pythonを起動し、プロンプトからインポートすると問題は発生しません。

+0

はチャンスごと 'requests'、名前のあなたが実行しているファイルですか? – Sam

+0

いいえ、html.py – Anthony

+0

という名前はあまり「標準的な」名前ではありません。 –

答えて

4

何が起こっているrequestsライブラリはhtmlという名前のファイルをインポートされています。あなたのファイルの名前はhtml.pyで、インポートパス上にあるので、2度読み込まれます。

これを避けるために、大会

if __name__ == '__main__': 
    print("HI") 

を使用してください。

は、詳細については、この質問を参照してください:What does if __name__ == "__main__": do?

+0

ありがとう!ご覧のとおり、私はPythonを初めて使っていますので、ちょっとぼんやりしています。 – Anthony

+0

'requests'モジュールが' html'の中に何かがないと主張するなら、ファイルの名前を変更しなければならないかもしれません。しかし、それは後のもう一つの誤りです。ハッピーハッキング – Sam

+0

そのような "スマートな"&汎用名は使用しないでください。すでに存在しているモジュール名に遭遇する可能性があります。 –

0

"html.py"という名前のファイルにヒザックアップするものがリクエストライブラリに存在する必要があります。

enter image description here

関連する問題