Не понимаю это Нет модуля с именем 'tkinter' ошибка - PullRequest
0 голосов
/ 25 сентября 2018

Я использовал ноутбук Jupyter в AWS EMR, когда запускаю программу, требующую графического представления.Я получаю эту ошибку:

 No module named 'tkinter'
    Traceback (most recent call last):
    File "/usr/local/lib/python3.4/site-packages/seaborn/__init__.py", line
    6, in <module>
    from .rcmod import *
    File "/usr/local/lib/python3.4/site-packages/seaborn/rcmod.py", line 5,
    in <module>
    from . import palettes, _orig_rc_params
  File "/usr/local/lib/python3.4/site-packages/seaborn/palettes.py", line 12, in <module>
    from .utils import desaturate, set_hls_values, get_color_cycle
  File "/usr/local/lib/python3.4/site-packages/seaborn/utils.py", line 11, in <module>
    import matplotlib.pyplot as plt
  File "/usr/local/lib64/python3.4/site-packages/matplotlib/pyplot.py", line 115, in <module>
    _backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
  File "/usr/local/lib64/python3.4/site-packages/matplotlib/backends/__init__.py", line 62, in pylab_setup
    [backend_name], 0)
  File "/usr/local/lib64/python3.4/site-packages/matplotlib/backends/backend_tkagg.py", line 4, in <module>
    from . import tkagg  # Paint image to Tk photo blitter extension.
  File "/usr/local/lib64/python3.4/site-packages/matplotlib/backends/tkagg.py", line 5, in <module>
    from six.moves import tkinter as Tk
  File "/usr/local/lib/python3.4/site-packages/six.py", line 92, in __get__
    result = self._resolve()
  File "/usr/local/lib/python3.4/site-packages/six.py", line 115, in _resolve
    return _import_module(self.mod)
  File "/usr/local/lib/python3.4/site-packages/six.py", line 82, in _import_module
    __import__(name)
ImportError: No module named 'tkinter'

Ответы [ 3 ]

0 голосов
/ 25 сентября 2018

Вы должны запустить matplotlib с неинтерактивным бэкэндом на сервере EC2, так как EC2 не использует заголовок.Настройте свой файл matplotlibrc с помощью этой строки.

backend : agg

Чтобы узнать больше об этом файле, перейдите по этой ссылке .

0 голосов
/ 25 сентября 2018

Я только что посмотрел на это на CentOS 7 VM (ближайшая вещь к вашей среде, которую я настроил прямо сейчас).Поскольку вы не используете коллекцию программного обеспечения (определенно рекомендуется), похоже, Tkinter может быть установлен с:

sudo yum install python33-python-tkinter.x86_64

Но похоже, что это для Python 3.3, тогда как вы используете Python 3.4, поэтому я 'рекомендую попробовать:

sudo yum install python34-python-tkinter.x86_64

Поиск пакетов

Если это не сработает, самый простой способ найти подходящий пакет, который я знаю, - это сделать:

yum search tkinter | less

... и посмотрите, какие пакеты появятся.


Коллекция программ

Если вы пойдете по пути сбора программ, вам потребуется установить соответствующий дистрибутив Python.( см. Сайт Коллекции программного обеспечения здесь ), затем установите соответствующую версию tkinter.Для меня yum search tkinter выводит:

...
rh-python34-python-tkinter.x86_64
rh-python35-python-tkinter.x86_64
rh-python36-python-tkinter.x86_64
...

Они предназначены для коллекций программного обеспечения и соответствуют Python 3.4, 3.5 и 3.6.

0 голосов
/ 25 сентября 2018

Полагаю, вам нужно установить модуль python3-tk.Если вы используете дистрибутив на основе Debian, запустите apt-get install python3-tk из командной строки.

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