win-python 2.7&3.6-スクリプトがシェルから使用するバージョンを切り替える


0

私は、スクリプトを置いてきたtest.py私に%USERPROFILE%フォルダ:

import sys
print("TEST", sys.version_info, sys.executable)

実行している場合cmdWIN+ R)、次に入力test+ ENTER以下が返されます。

C:\Users\wittrup>test
('TEST', sys.version_info(major=2, minor=7, micro=10, releaselevel='final', serial=0), 'C:\\Python27\\python.exe')

これをPython 3.6で実行したいと思います。

2つのPythonバージョンがインストールされています。

  • C:\Python27\python.exe
  • C:\Users\wittrup\AppData\Local\Continuum\Anaconda3

echo %path:;=&echo.% ショー:

C:\WINDOWS\system32
C:\WINDOWS
C:\WINDOWS\System32\Wbem
C:\WINDOWS\System32\WindowsPowerShell\v1.0\
C:\Program Files (x86)\pythonxy\SciTE-3.5.1-4
C:\Program Files (x86)\pythonxy\console
C:\Users\wittrup\AppData\Local\Microsoft\WindowsApps
C:\Users\wittrup\AppData\Local\Continuum\Anaconda3
C:\Users\wittrup\AppData\Local\Continuum\Anaconda3\Scripts

(そして、私はこのケースに関係ないと思われる他の多くのもの)

C:\Users\wittrup>echo %PATHEXT%
.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY;.PYW

レジストリ:

Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Python.exe
C:\Users\wittrup\AppData\Local\Continuum\Anaconda3\python.exe

Computer\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\App Paths\python.exe
C:\Users\wittrup\AppData\Local\Continuum\Anaconda3\python.exe

ここで私を打ち負かしたのは、WindowsがPython 2.6でスクリプトを実行する方法を本当に理解できないのですか?

C:\Users\wittrup>ver
Microsoft Windows [Version 10.0.17134.407]

1
assoc .pyと の出力を投稿に追加しftype | findstr pyます。
harrymc

回答:


0

質問コメントで解決できます(ありがとう!)。

; Note the detail about administrator privileges
C:\WINDOWS\system32>ASSOC .py
.py=Python.File

C:\WINDOWS\system32>FTYPE | FINDSTR Python.File
Python.File="C:\Python27\python.exe" "%1" %*

C:\WINDOWS\system32>FTYPE /?
Displays or modifies file types used in file extension associations

FTYPE [fileType[=[openCommandString]]]

  fileType  Specifies the file type to examine or change
  openCommandString Specifies the open command to use when launching files
                    of this type.
; more ...

C:\WINDOWS\system32>FTYPE Python.File="python.exe" "%1" %*
Python.File="python.exe" "%1" %*

そして、環境変数に残りを処理させます。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.