Сбой IDLE3 несмотря на "правильную" версию tkinter - PullRequest
0 голосов
/ 04 января 2019

В macOS High Sierra 10.13.6 я использовал Python3.7.1, установил напрямую с python.org, с biopython и некоторое время успешно и успешно использовал IDLE.

Желая добавить графический интерфейс, я использовал Homebrew для добавления PyGobject. Это устанавливает свой собственный Python, и перешел на 3.7.2. IDLE, запущенная из установки HomeBrew, предупреждает, что я использую нестабильный TCL / tk, несмотря на эту страницу , в которой говорится, что Python3.7.x имеет внутреннюю версию Tcl / tk, чтобы избежать этой давней проблемы.

> Python 3.7.2 (по умолчанию, 27 декабря 2018 г., 07:35:52) [Clang 10.0.0 (clang-1000.11.45.5)] на Дарвине Введите «помощь», «авторское право», «кредиты» или «license ()» для получения дополнительной информации. ВНИМАНИЕ: Используемая версия Tcl / Tk (8.5.9) может быть нестабильной. Визит http://www.python.org/download/mac/tcltk/ для текущей информации.

При редактировании файла происходит сбой.

> Traceback (последний вызов был последним): Файл "/ usr / local / bin / idle3", строка 5, в главный() Файл "/usr/local/Cellar/python/3.7.2/Frameworks/Python.framework/Versions/3.7/lib/python3.7/idlelib/pyshell.py" в главной строке root.mainloop () Файл "/usr/local/Cellar/python/3.7.2/Frameworks/Python.framework/Versions/3.7/lib/python3.7/tkinter/init.py", строка 1283, в mainloop self.tk.mainloop (п) UnicodeDecodeError: кодек «utf-8» не может декодировать байт 0xff в позиции 0: недопустимый начальный байт

Почему установка через Homebrew делает это?

  1. У меня настроен путь PATH через Homebrew, а не прямая установка
  2. PyGobject должен быть установлен, потому что тест Hello World создает окно
  3. Biopython установлен и работает
  4. Я установил >> PATH = "/ usr / local / opt / tcl-tk / bin: $ PATH" <и >> PKG_CONFIG_PATH = "/ usr / local / opt / tcl-tk / lib / pkgconfig" в соответствии с рекомендациями в логе установки
  5. Другие ответы в других местах говорят, чтобы установить ActiveTCl - не радость, все еще вылетает
  6. PyCharm работает, но ... на самом деле не проблема
  7. Я попытался использовать JHbuild вместо этого, но все это построено на Python2 и следе устаревших команд python2 __builtin__ и т. Д. Для удаления

Как мне выйти из этого, пожалуйста?

...