Используйте emacs (aquamacs) с python 3.2 - PullRequest
2 голосов
/ 29 июня 2011

Версия Python по умолчанию для Mac OSX Snow Leopard - это Python 2.6.1. Я изучаю Python 3, поэтому мне нужно сменить переводчика. Я изменил настройку в настройках, чтобы она указала на /Library/framework/python.framework/version/3.2/bin/python3.2. Я считаю, что именно здесь установлен мой интерпретатор 3.2. Когда я перезагружаю Emacs, все работает нормально. Когда я запускаю интерпретатор, он говорит: python 3.2:

Python 3.2 (r32:88452, Feb 20 2011, 11:12:31) 
[GCC 4.2.1 (Apple Inc. build 5664)] on darwin
Type "help", "copyright", "credits" or "license" for more information.

Однако, когда я прошу Emacs выполнить буфер, появляется это сообщение:

execfile(r'/var/folders/yV/yVXYrzONGSaZeoBmB-mdkE+++TI/-Tmp-/python-2180L5f.py') # PYTHON-MODE
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'execfile' is not defined

Я не знаю, как это исправить. Это не имеет ничего общего с моим кодом, потому что это сообщение появляется, даже когда я пытаюсь выполнить:

print ("Hello World")

Ответы [ 2 ]

0 голосов
/ 11 ноября 2013

Это более длинный ответ, так как я должен был рассмотреть его.

  1. Python 3 должен быть установлен в вашей системе.Я уже установил HomeBrew, так что это включало $ brew install python3.Вы можете установить и другие методы.

  2. Я использую virtualenv для Python 3. Я создаю virtualenv, используя virtualenv -P python3 myproj Aquamacs, позволяющий M-x virtualenv-activate установить его.

  3. В файле python-mode.el возникли проблемы, файл lisp скрылся в вашем /Applications/Aquamacs.app/Contents/Resources/lisp/aquamacs/edit-modes/python-mode. Андреас Рёлер исправил ошибку .Если страница основного режима Python по-прежнему работает на версии 6.1.2, вы загружаете новую python-mode.el здесь и копируете ее поверх существующей версии.

Теперь должно работать.

0 голосов
/ 30 июня 2011

Python 3 не имеет execfile(), поэтому ваш emacs просто не поддерживает Python 3.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...