86132


`python -mzeep` の使い方を知りたく質問させて頂きました。

ドキュメント通り以下コマンドを実行したのですが、思い通りの出力結果が得られませんでした。  
もし何か理由についてわかるかたがいらっしゃればご教示頂けると幸いでございます。

コマンド： `python -mzeep .\SystemManagementService.wsdl`  
出力結果： `Python`

適当な引数でも結果は同じ  
コマンド： `python -mzeep 3`  
出力結果： `Python`


CC BY-SA 4.0
2022-02-03T13:14:12.750
86125
2022-02-04T15:41:29.860
2022-02-04T01:25:35.510
3060
51133
question
python
python -mzeep コマンドを実行しても分析結果が表示されない


多くの環境で考えられることはカレントディレクトリやPATHで示されたディレクトリのどこか(Python関連ディレクトリよりも前)に実行すると`Python`とだけ表示する`python`という名前を持つ実行ファイル(実行できるならスクリプト(バッチファイル等)でも可)が存在しているということでしょう。

その実行ファイルを探して削除し、かつその後Pythonインタープリタがコマンドラインから起動できる環境になっていれば、動作するでしょう。

コメントに書いた`-m`と`zeep`の間に空白は必要ですが。

ただしWindows10の場合は以下に書いた内容の可能性が非常に高いので、チェックしてみてください。

* * *

原因はWindows10のアプリ実行エイリアスがデフォルト(Microsoft
StoreからPythonをインストールする)のままになっているからでしょう。  
ここのサイトでもいくつか同様の状況だった記事があったと思います。

* * *

スタートメニューの歯車アイコン「設定」を開いて、「アプリ」を選択して表示された画面で「アプリ実行エイリアス」をクリックすると並んでいるうちの下2つが「アプリ
インストーラー Python.exe」と「アプリ インストーラー
Python3.exe」と表示されていて「オン」になっているはずです。それを「オフ」にした後にコマンドプロンプトを起動すれば「python -m zeep
wsdlファイル名」が動作するようになっているでしょう。

他には、PythonをPython.orgのインストーラーでインストールしていて、特にオプションを変更していない場合、「Python
Launcher」もインストールされているはずです。  
その場合は「アプリ実行エイリアス」がデフォルトのままでも、代わりに「py.exe」が使えます。

「Python Launcher」がインストールされているなら、`python`ではなく`py`を使って「py -m zeep
wsdlファイル名」とすれば実行されるでしょう。

* * *

さらに別の状況や手段として、PATHの登録順番の問題/変更があります。  
以下のようなディレクトリの中に「アプリ実行エイリアス」の実体も入っています。  
これらがPATHの順番でPython関連ディレクトリよりも前に設定されていると、Python自身のコマンドよりも「アプリ実行エイリアス」のPython.exeの方が先に見つかるので、そちらが実行されてしまいます。

[code]

    C:\Users\ユーザー名\AppData\Local\Microsoft\WindowsApps
    %USERPROFILE%\AppData\Local\Microsoft\WindowsApps
    
[/code]

Python関連ディレクトリがPATHに登録されているなら、スタートメニューの歯車アイコン「設定」から「システム」で表示される画面の左下「詳細情報」を選択し、右に表示される関連情報の途中の「システムの詳細設定」で表示されるダイアログの「環境変数」で、上側の「ユーザー名のユーザー環境変数」に定義されている`Path`を編集して、Python関連ディレクトリを上記WindowsAppsよりも上に移動させれば良いでしょう。

あるいはPythonをAll
UsersでインストールしてかつPATHも登録していると、Python関連ディレクトリは「システム環境変数」の`Path`に登録されているかもしれません。その場合はユーザー環境変数よりも先になるはずなので、今回のような現象は起こらないと思われます。


CC BY-SA 4.0
2022-02-04T00:41:59.680
86132
2022-02-04T15:41:29.860
2022-02-04T15:41:29.860
26370
26370
86125
answer