2016-07-24 58 views
4

當我在Sublime Text或CodeRunner中編譯test.py(一個非常簡單的Python文件)時,出現錯誤:/bin/bash: python: command not found。然後我在終端應用程序中輸入python test.py,它工作。後來我下載了Pycharm並重新編譯了這個文件,它也起作用了!在某些IDE中未找到Mac OS X/bin/bash:python:命令

因此,我假設有某種路徑設置或其他設置不正確。我在互聯網上搜索了很長時間,但沒有用。請幫助或嘗試提供一些想法如何解決問題。

這裏還有一些細節:

  1. 我試過在test.py文件的頂部,但沒有使用插入#! /usr/bin/python

  2. echo "$PATH"在端子的輸出/usr/local/sbin:/Library/Frameworks/Python.framework/Versions/3.5/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Library/TeX/texbin:/Users/chenyang/Downloads/android-sdk-macosx/platform-tools

  3. 我在我的MacBook中發現了幾個Python版本:2.6,2.7,3.2,3.3,3.5。在文件夾/System/Library/Frameworks/Python.framework/Versions下我發現2.6,2.7。在文件夾/Library/Frameworks/Python.framework/Versions下,我找到了3.2,3,3,3.5。


我已經解決了自己的問題和後下

+0

哪個版本的Python你想與運行您的程序? 2.7? 3.5(推薦)? – MattDMo

+0

在CodeRunner IDE中,我可以選擇使用Python2或Python3。所以我嘗試了兩種都失敗了。 – ChenYang

回答

0

謝謝大家誰幫助。我自己解決了這個問題。

我一直在使用zsh而不是bash。將CodeRunner更新爲最新版本後,該應用默認使用bash。所以我只需要進入首選項>高級菜單,並在運行代碼來解決問題時,取消選中複選框以登錄模式調用bash。

在崇高的文本3,解決的辦法是在這個環節:https://stackoverflow.com/a/38574286/6631854

4

答案的終端加載了一些文件,可以修改PATH變量,包括~/.profile~/.bashrc~/.bash_profile等。這些在Mac OS X系統UI啓動時/當您通過Finder應用程序登錄到用戶配置文件時不會加載。因此,通過Finder啓動的應用程序不會繼承這些文件中設置的PATH和其他環境變量。

不同版本的Mac OS X有不同的解決方案來設置環境變量,以便Finder加載它們。較早版本的Mac OS X支持一個名爲~/.MacOSX/environment.plist的文件,可用於指定環境。較新版本的OS X使用launchctl工具來設置環境變量,這些環境變量由以launchctl(負責啓動系統UI和其他系統服務)開始的應用程序查看。

總之,使用命令:

launchctl setenv <variable-name> <variable-value> 

要設置該環境變量爲當前用戶。應用程序以當前用戶將繼承指定的變量的方式運行。因此,例如,您可以執行以下操作:

launchctl setenv PATH "$PATH" 

...從終端將您當前的PATH值應用於您的帳戶系統。

參見: