27

入力する必要がなく、WindowsのCMDで入力python script.pyするだけで済むように構成するにはどうすればよいですか?script.py

python.exeを含む%PATH%にpythonディレクトリを追加しましたが、それでもスクリプトが正しく実行されません。

django-admin.pyで試してみました。実行するとコマンドdjango-admin.py startproject mysite Type 'django-admin.py help <subcommand>' for help on a specific subcommand.正しく処理されます。

ここでの問題は何ですか?

4

4 に答える 4

40
C:\> assoc .py=Python
C:\> ftype Python="C:\python27\python.exe %1 %*"

または、関連するパスが何であれ、ftypeを使用してコマンドライン引数を設定することもできます。


.pyファイルの場合と同様に、サフィックス()を付けずにコマンドを認識できるようにするには、(グローバル)変数のセミコロンで区切られたリストに.exe追加します。.pyPATHEXT

ETA 2017-07-27

これはまだ注目を集めているようで、Win10ユーザー(@shadowrunnerから)にとって有用なコメントを高めたいと考えていました:

Win10で動作させるために、実際のコマンドは次のとおりです(引用符の配置に注意してください)。

C:\> ftype Python="c:\Anaconda2\python.exe" "%1" %*

ETA 2019-02-01

常緑樹について話してください!

まず、Pythonを新しくインストールする場合は、@NunoAndréによる回答を確認することを強くお勧めします。

次に、最近のコメントから何かを明確にするために、注意してください。両方の部分(assocftype)を実行するか、コマンドで既存の関連付けラベルを使用する必要がありますftype

デフォルトでは、少なくともWindows8.1のPython3.7では、の関連付けは.pyですPython.File。したがって、関連付けを最初に変更しない限り、上記のコマンドを実行してもftype正しく機能しません。ftypeまたは、代わりにデフォルトの関連付けを使用して指定することもできます。君による。

于 2012-07-13T14:59:10.483 に答える
4

Python 3.3から、Windows用のランチャーが含まれています:(pyおよびpywGUIまたは非UIアプリケーション用)

これは、さまざまなPythonバージョンの検索と実行に役立ちます。スクリプト(またはコマンドライン)が特定のPythonバージョンの設定を示すことができ、そのバージョンを見つけて実行します。

PATH変数とは異なり、ランチャーはPythonの最も適切なバージョンを正しく選択します。システム全体のインストールよりもユーザーごとのインストールを優先し、最後にインストールされたバージョンを使用するのではなく、言語バージョンごとに注文します。

Pythonインストーラーはopen、デフォルトでPythonのファイル拡張子を動詞にリンクするため、名前(および必要に応じて引数)を入力するだけでPythonファイルを実行できます。

警告:python.exeとpythonw.exeの違いに注意してください


他の利点の中でも、Windowsランチャーは'nix shebangsを読み取るため、Pythonバージョンまたはpython.exe'コマンドライン引数を指定できます

このスクリプトを実行してこれを確認できます(デフォルトとしてpy3を想定)。

#! /usr/bin/python2.7 -i
import sys
print(sys.version)
  • myscript.py:で実行されpy、起動python2.7し、終了後にインタラクティブモードに入ります(-i、テストとデバッグに最適なオプション)。
  • myscript.py -3:で実行されpy、起動python3してインタラクティブモードを維持します。
  • python myscript.py:デフォルトのPythonランタイムで実行され、インタラクティブモードはありません。

このデフォルトの関連付けはftype、で変更できますが、次のことを強くお勧めします。

edit他の動詞( 、、...など)をこれらのファイルtestに簡単に関連付けることができます。debug


さらに、Pythonの拡張機能を省略してPATHEXT、優先順に環境変数に追加することで、ターミナルでファイルを実行できます。(変更を有効にするには、ターミナルを再度開く必要があります)。

setx PATHEXT %PATHEXT%;.PYC;.PYZ;.PY

于 2018-06-16T12:29:06.727 に答える
2

私も同じ問題を抱えていました...*。pyファイルをPythonランチャーに再度関連付けることで修正できました。

  1. * .pyファイルを右クリックして、そのプロパティを開きます。
  2. [次で開く...]セクションの[変更]ボタンをクリックします
  3. [その他のアプリ]->[このPCで別のアプリを探す]を選択します。
  4. 次に、Windowsフォルダを参照します(デフォルト: "C:\ Windows")
  5. 「py.exe」を選択します
于 2021-06-10T15:18:37.363 に答える
1

私は試してみました:

C:\> assoc .py=Python
C:\> ftype Python="C:\tools\python\python.exe %1 %*"

それは私にはうまくいきませんでした。だから私はftype検索をしました:

ftype | find "Python"
Python="c:\tools\python\python.exe" %1 %*
Python.ArchiveFile="C:\Windows\py.exe" "%L" %*
Python.NoConArchiveFile="C:\Windows\pyw.exe" "%L" %*

少し他のftypeコマンドで私の問題を解決しました:

ftype Python="c:\tools\python\python.exe" "%L" %*
于 2020-07-20T20:56:11.023 に答える