* * *
Pythonの関連付け設定を確認・変更したいです。
古いプロジェクトのメンテナンスのためだったり、必要なライブラリが特定のバージョンに依存していたり、新しいバージョンで動作確認をしてみたかったり。さまざまな理由で複数バージョンのPythonをインストールしなければならない場面があります。
Linuxならばvirtualenvやpythonbrewなどを使って、複数バージョンのPythonを使い分けることもできるのですが、WindowsではPythonをインストールするたびにPATHや関連付けが上書きされてしまいます。結局、最後にインストールしたものが有効になっているため、複数バージョンを使い分けるのはとても難しい状態になっています。
せめて、普段使うバージョンのものをPATHや関連付けに設定しておいて、他のバージョンを使うときはバッチファイルなどで対処できるようにしたいです。
PATHの設定は環境変数を編集すればいいと分かりますが、関連付けの設定はどこでやればいいのでしょう。
解:
ftypeコマンドでPython.CompiledFile、Python.File、Python.NoConFileの関連付けを確認・変更しましょう。
Pythonの関連付けとして、以下の3つのファイルタイプが登録されています。
- Python.CompiledFile
- Python.File
- Python.NoConFile
assocコマンドの出力を見ると分かるのですが、上記のファイルタイプはそれぞれ、以下の拡張子に関連付けられています。
D:\>assoc .py
.py=Python.File
D:\>assoc .pyo
.pyo=Python.CompiledFile
D:\>assoc .pyw
.pyw=Python.NoConFile
手元の環境では以下のように設定されていました。
D:\>ftype Python.CompiledFile
Python.CompiledFile="D:\Python26\python.exe" "%1" %*
D:\>ftype Python.File
Python.File="D:\Python26\python.exe" "%1" %*
D:\>ftype Python.NoConFile
Python.NoConFile="D:\Python26\pythonw.exe" "%1" %*
.pyと.pyoはコンソール付きで実行、.pywはコンソール無しで実行する設定になっています。どちらもPython2.6が設定されています。この値を変更することで、Pythonの関連付けを好きなように設定することができます。.pyファイルの関連付けをIDLEで開くようにしたい場合は、関連付けたいバージョンのidle.batに関連付けましょう。
* * *
Windowsの関連付けはDOSプロンプトで設定するのが、分かりやすくてよいと思います。
環境:
Windows 7