After clean up the python on MacOS, it still doesn’t work well in emacs. I found emacs still called the wrong python. My shell load 2.7.13 and emacs used 2.7.10, which doesn’t have updated and new installed modules.
I found that emacs doesn’t use the MacOS system environment variables, then easy:
1. Go to the directory ~/.emacs.d/site-lisp under terminal
2. Get $PATH by shell
git clone https://github.com/purcell/exec-path-from-shell.git
3. Add the following to .emacs
(add-to-list 'load-path "~/.emacs.d/site-lisp/exec-path-from-shell") (require 'exec-path-from-shell) (defconst *is-a-mac* (eq system-type 'darwin)) ;; test for amc (if *is-a-mac* (add-hook 'after-init-hook 'exec-path-from-shell-initialize))
(reference: https://emacs.stackexchange.com/questions/17249/how-to-make-terminal-shell-spawned-inside-emacs-running-on-a-mac-inherit-the-env)