簡體   English   中英

無法在Win7上將python.exe設置為* .py腳本

[英]Impossible to set python.exe to *.py scripts on Win7

我已經在Win7(64位)的PC上安裝了py 2.7(64位)而沒有問題,但我無法通過DOS shell運行* .py腳本而無需聲明python完整路徑。 讓我更好地解釋一下:

如果我鍵入D:\\ myscript.py它不起作用。 腳本是用wordpad打開的如果我輸入D:\\ C:\\ Python27 myscript.py它可以正常運行

我嘗試通過Win7 GUI(控制面板等)更改* .py文件的默認應用程序軟件,但沒有成功。 Python不存在於可用sw的列表中,並且在任何情況下也與手冊集相關,我無法將* .py文件與python.exe相關聯。

我檢查了我的環境變量,但我沒有發現問題(在Path = C:\\ Python27 \\; C:\\ Python27 \\ Scripts中聲明了python路徑)。

我也試過修改HKEY_CLASSES_ROOT-> Applications-> python.exe-> shell-> open->命令:舊寄存器值“C:\\ Python27 \\ python.exe”“%1”新寄存器值“C:\\ Python27 \\ python.exe“”%1“%*

沒有成功。

有什么建議嗎?

謝謝

這是另一個要做的檢查,這有助於我弄清楚發生了什么。

我從32位Anaconda切換到64位版本。 我卸載,下載然后重新安裝,但有幾件事沒有得到正確清理(快速啟動的東西,以及一些注冊表項)。 我這邊的問題是默認的安裝路徑發生了變化,從C:\\Anaconda變為C:\\Anaconda2

我首先嘗試了assocftype技巧,一切都很好。 但是, HKEY_CLASSES_ROOT\\Applications\\python.exe\\shell\\open\\command注冊表項指向舊的Anaconda路徑。 一旦我修復了這個問題,當我嘗試與“打開方式”關聯時, python.exe出現了,一切都恢復正常。

我還在注冊表項的末尾添加了%*

您可以嘗試在CMD中使用ASSOCIATE命令:

ASSOCIATE .py C:\PathTo\python.exe

有關更多信息,請訪問http://ss64.com/nt/associate.html

@slv的回答很好,幫我解決了這個問題。 無論如何,因為在我發生此錯誤之前我曾經安裝過Python,所以我可能需要添加一些內容。 其中一個主要問題是我的python-installation目錄發生了變化。

所以,我打開了regedit.exe並按照以下步驟操作:

  1. 我在整個注冊表中搜索了.py.pyw.pyx.pyc (希望我不忘在這里提及)。 然后,我徹底刪除了我能找到的所有事件。

  2. 我在整個注冊表中搜索了我的 python-installation-path(例如C:\\Users\\Desktop\\Anaconda3 )。 然后我用我的新安裝路徑替換了這個路徑(例如C:\\Users\\Desktop\\Miniconda3 )。 因此,我也遇到了@slv提到的HKEY_CLASSES_ROOT\\Applications\\python.exe\\shell\\open\\command

之后,可以再次使用我的python.exeOpen with....py文件Open with... -menu連接起來。

* .py文件是源代碼文件。 如果正確設置了系統環境,則需要運行python myscript.py

以下答案與您的問題有關使Python腳本在Windows上運行而不指定“.py”擴展名

您是否知道當您更改文件的默認應用程序時,您可以瀏覽該應用程序?

您可以單擊“瀏覽”按鈕(如紅色矩形所示),然后選擇C:\\ Python27 \\ python.exe。

還要記得單擊“始終使用此程序打開此程序”復選框,該復選框顯示在綠色矩形中,以便win7知道下次要求它打開* .py文件時如何打開此文件。

然后我相信你只需在DOS shell中的正確目錄中鍵入“myScript.py”就可以運行myScript.py.

在此輸入圖像描述

完成上述所有步驟后,請務必重新打開新的命令shell。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM