天天看點

Sublime text || [WinError 2] 系統找不到指定的檔案 || 編譯Python代碼

  • 本文主要解決使用Sublime編譯Python代碼,狀态欄顯示 “[WinError 2] 系統找不到指定的檔案” 這一問題。

文章目錄

  • ​​問題描述​​
  • ​​解決方法一:複制python.exe并重命名​​
  • ​​解決方法二:修改Python.sublime-package檔案​​
  • ​​簡單總結​​
  • ​​參考來源​​

問題描述

  • 在Sublime中編譯Python代碼,狀态欄報錯如下:
  • 實際上,系統找不到的指定檔案是Python的​​可執行檔案​​​(​

    ​.exe​

    ​),而我的Anaconda中明明是有Python的,是以系統找不到指定檔案的原因是和Python可執行檔案的命名有關。進一步講,系統想要 ​

    ​py.exe​

    ​​,我的卻是​

    ​python.exe​

    ​。

解決方法一:複制python.exe并重命名

  1. 找到檔案夾anaconda3并打開,每個人存放的位置不一定會相同;
  2. 在檔案夾anaconda3中找到可執行檔案(應用程式)python;
  3. 選中可執行檔案python後進行複制,并粘貼到現在的檔案夾anaconda3裡面,得到python-副本;
  4. 将python-副本重命名為py,重新開機sublime即可成功編譯代碼。

解決方法二:修改Python.​​sublime​​-package檔案

  1. 找到檔案夾Sublime Text 3并打開,每個人存放的位置不一定會相同;
  2. Sublime text || [WinError 2] 系統找不到指定的檔案 || 編譯Python代碼
  3. 打開其中的檔案夾Package;
  4. Sublime text || [WinError 2] 系統找不到指定的檔案 || 編譯Python代碼
  5. 找到名為Python的​

    ​SUBLIME-PACKAGE檔案​

    ​,使用解壓軟體打開;
  6. Sublime text || [WinError 2] 系統找不到指定的檔案 || 編譯Python代碼
  7. 找到名為Python的​

    ​SUBLIME-BUILD檔案​

    ​;
  8. Sublime text || [WinError 2] 系統找不到指定的檔案 || 編譯Python代碼
  9. 使用sublime或者是其他的文本編輯器打開;
  10. 截圖中框住的兩部分,即為sublime在Windows上編譯Python代碼時所執行的相關指令,也就是報錯的根源所在,将其中的py改為python(和Anaconda中Python的可執行檔案同名)即可。儲存修改後的内容,重新開機sublime便能正常使用了。

簡單總結

  • 兩種方法相當于從Sublime編譯器本身與找不到的指定檔案,這内外兩個角度來解決問題。
  • 第一種方法可以說是非常簡單的,而新增加的檔案大小也隻有93KB,似乎無可挑剔。
  • 第二種方法雖然有一點點挑戰性,但絕對可行。我重點要說是最後儲存修改後的名為Python的​

    ​SUBLIME-BUILD檔案​

    ​的有關操作。

    首先,不管是直接關閉,還是選擇菜單欄中的檔案進行儲存、另存為,都不能将修改後的内容儲存到名為Python的​

    ​SUBLIME-PACKAGE檔案​

    ​(使用解壓軟體打開)中;我是将修改後的​

    ​SUBLIME-BUILD檔案​

    ​儲存到桌面上(關鍵是容易找到),将其通過解壓軟體添加(直接覆寫)到​

    ​SUBLIME-PACKAGE檔案​

    ​當中,這樣才能将修改後的内容真正儲存下來。

    其次,我還在​

    ​SUBLIME-BUILD檔案​

    ​中多添加了一行​

    ​"shell": true​

    ​,對此我也真的很無奈啊。本來經過上面的操作之後,我是高高興興的,因為代碼确實可以成功運作,但是如果要繪圖,加了​

    ​plt..show​

    ​圖像視窗也還是彈出不出來。是以這一行指令的作用就是,編譯繪圖代碼後,能顯示圖像,即圖像視窗可以彈出。
  • 當然,解決問題的方法不止一種,甚至你的問題仍沒有得到解決。但這也并不妨礙我們繼續去尋找答案,不是嗎?

參考來源

  • ​​Sublime Text 中運作Python代碼報 “[WinError 2] 系統找不到指定的檔案” 的問題

  • ​​Sublime 下 matplotlib 的 plot 顯示不出來界面怎麼辦?@尚文​​