1

私は奇妙な状況にありました:

私のフォルダー /home/Komponenten/ には、たくさんの python スクリプトがありました

私が始めたとき

cd /home/コンポンテネン

/home/Kompontenen>python urlfilter.py

別のスクリプトが実行された結果、私の場合は同じフォルダーの queue.py であることがわかりました

私は問題ありませんが、queue.py を使用した場合、urlfilter にコードが含まれている可能性があります。Queue.py には、マルチスレッドを使用した小さなテストが含まれていましたが、特別なことは何もありませんでした

だから私は単純に queue.py ファイルを移動しようとしました

その後、urlfilter.py は正常に実行され、エラーは発生しませんでした

そのため、python インタープリターが urlfilter.py ではなく queue.py を実行した理由がまだわかりません

4

1 に答える 1

2

Python では、インポート パスに.(作業ディレクトリ) が含まれます。モジュールをインポートすることは、基本的にそれを実行することを意味します。queueそのため、 fromのインポートが実行されましたurlfilter.pyqueueインポートによるスクリプトの誤った実行を避けるために、__name__変数の値を確認できます'__main__'

if __name__ == '__main__':
    do_not_execute_this_during_import()
于 2013-09-13T09:12:37.670 に答える