2

win7にnotepad++をインストールし、notepad++execプラグインをインストールしました。実行している.pyスクリプトを実行するたびに、次のエラーが発生します。

C:/Python27/python.exe ""
Process started >>>
C:\Python27\python.exe: can't find '__main__' module in ''
<<< Process finished.
================ READY ================

私のindex.pyスクリプトは次のとおりです。

text = "Hello World"
print text

Notepad ++実行スクリプト(F6)は次のとおりです。

C:/Python27/python.exe "$(C:/Python27/python.exe)"

これは私のシステムのpython.exeへの正しいパスです。Windowsの環境変数では、これもPATHに追加しました。また、python.exeコマンドプロンプトを起動し、手動で入力してスクリプトを機能させることができました。C:/ Python27のディレクトリ検索を実行し、メインの.pyファイルが存在します。

ここで何が間違っているのですか?Pythonが__メイン__モジュールを見つけられないのはなぜですか?

編集:

これを気にしないでください、私はばかです。

そのため、notepad ++ exec(F6)スクリプトの設定を誤って解釈していました。

C:/Python27/python.exe "$(C:/Python27/python.exe)"

代わりにこれであるはずです:

C:/Python27/python.exe "$(FULL_CURRENT_PATH)"

もちろん、FULL_CURRENT_PATHに移動しなかったため、メインの.pyファイルは見つかりませんでした。続ける。

4

1 に答える 1

2

基本的に、これはスクリプトの最初の引数が誤って解釈されているためです。つまり、コードで

C:/python27/python.exe "$(C:/python27/python.exe)"

あなたはほぼ同等のことをしています

C:/python27/python.exe 

使用する必要があるものは次のとおりです。

C:/Python27/python.exe "$(FULL_CURRENT_PATH)"

注:「$(FULL_CURRENT_PATH)」を他のものに置き換えないでください-逐語的に入力してください-これはNppExecプラグインの事前定義された変数です。これは、現在開いているタブのファイルのフルパスの省略形と見なすことができます。

上記のスクリプトを実行すると(tmp.pyというファイルで、c:\ xampp \ htdocs \ enhzflepフォルダーにあります)、コンソールに次のように表示されます。

C:/Python27/python.exe "C:\ xampp \ htdocs \ enhzflep \ tmp.py" CreateProcess()がエラーコード2で失敗しました:システムは指定されたファイルを見つけることができません。

このマシンにはPythonがインストールされていないので、これで問題ありません。:)

編集:あなたの編集を見ただけです。私はもっ​​と馬鹿なようです!

于 2012-09-11T03:30:51.157 に答える