Всем привет! В документации написано, что tkinter имеется в стандартном наборе библиотек Python. Но при импорте модуля, интерпретатор выдаёт ошибки, что такого модуля не существует. Пробовал различные варианты:
- import _tkinter
- import tkinter
- import Tkinter
Ошибка везде одинаковая:
Traceback (most recent call last):
File "<input>", line 1, in <module>
File "D:PyCharmPyCharm Community Edition 2019.1.3helperspydev_pydev_bundlepydev_import_hook.py", line 21, in do_import
module = self._system_import(name, *args, **kwargs)
ModuleNotFoundError: No module named 'tkinter
Как правильно импортировать модуль? Или его нужно установить?
Эникейщик
25.1k7 золотых знаков30 серебряных знаков46 бронзовых знаков
задан 8 сен 2019 в 6:06
7
При установке Python на Windows нужно зайти в «Customize installation» и проверить чтобы стояла галка напротив «tcl/tk and IDLE». Если первоначально Python был установлен без этой галки, переустановка с включенной галкой должна решить эту проблему.
ответ дан 8 ноя 2019 в 17:40
insolorinsolor
45.9k16 золотых знаков54 серебряных знака95 бронзовых знаков
Сразу скажу, что не шарю.
Скорее всего, установил не полный пакет питона или что-то в таком духе, поэтому там просто нет tkinter (Было похожее с пайгеймом, там надо было скачать файл и установить).
Можешь проверить, есть ли он у тебя вообще в файлах.
Если нет, то тут, наверное, поможет переустановка питона.
ответ дан 8 сен 2019 в 6:32
Чтобы использовать tkinter в ОС Linux, надо установить пакет python-tk.
ответ дан 8 сен 2019 в 7:26
Anton KulagoAnton Kulago
3682 серебряных знака12 бронзовых знаков
Тоже сначала столкнулся с этой проблемой. Справился так:
from tkinter import *
Также это может помочь:
import tkinter as tk
P.S. отвечая @insolor
ответ дан 17 мая 2020 в 10:44
3
sudo pacman -S tk
Можно попробовать для Арча, Манджаро.
ответ дан 8 июн 2020 в 11:21
KITTKITT
33 бронзовых знака
Unused import(s) enum, sys, types, TclError, re, wantobjects, TkVersion, TclVersion, READABLE, WRITABLE, EXCEPTION, EventType, Event, NoDefaultRoot, Variable, StringVar, IntVar, DoubleVar, BooleanVar, mainloop, getint, getdouble, getboolean, Misc, CallWrapper, XView, YView, Wm, Tcl, Pack, Place, Grid, BaseWidget, Widget, Toplevel, Canvas, Checkbutton, Entry, Frame, Label, Listbox, Menu, Menubutton, Message, Radiobutton, Scale, Scrollbar, Text, OptionMenu, Image, PhotoImage, BitmapImage, image_names, image_types, Spinbox, LabelFrame, PanedWindow, NO, FALSE, OFF, YES, TRUE, ON, N, S, W, E, NW, SW, NE, SE, NS, EW, NSEW, CENTER, NONE, X, Y, BOTH, LEFT, TOP, RIGHT, BOTTOM, RAISED, SUNKEN, FLAT, RIDGE, GROOVE, SOLID, HORIZONTAL, VERTICAL, NUMERIC, CHAR, WORD, BASELINE, INSIDE, OUTSIDE, SEL, SEL_FIRST, SEL_LAST, END, INSERT, CURRENT, ANCHOR, ALL, NORMAL, DISABLED, ACTIVE, HIDDEN, CASCADE, CHECKBUTTON, COMMAND, RADIOBUTTON, SEPARATOR, SINGLE, BROWSE, MULTIPLE, EXTENDED, DOTBOX, UNDERLINE, PIESLICE, CHORD, ARC, FIRST, LAST, BUTT, PROJECTING, ROUND, BEVEL, MITER, MOVETO, SCROLL, UNITS and PAGES from wildcard import of tkinter
Bug report
I just wanted to use matplotlib to draw a line graph and save it to a file, but every time I try to import the pyplot module I get the abovementioned error message.
python3 -c "import matplotlib.pyplot"
Actual outcome
>>> import matplotlib.pyplot
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/local/lib/python3.6/site-packages/matplotlib/pyplot.py", line 115, in <module>
_backend_mod, new_figure_manager, draw_if_interactive, _show = pylab_setup()
File "/usr/local/lib/python3.6/site-packages/matplotlib/backends/__init__.py", line 32, in pylab_setup
globals(),locals(),[backend_name],0)
File "/usr/local/lib/python3.6/site-packages/matplotlib/backends/backend_tkagg.py", line 6, in <module>
from six.moves import tkinter as Tk
File "/usr/local/lib/python3.6/site-packages/six.py", line 92, in __get__
result = self._resolve()
File "/usr/local/lib/python3.6/site-packages/six.py", line 115, in _resolve
return _import_module(self.mod)
File "/usr/local/lib/python3.6/site-packages/six.py", line 82, in _import_module
__import__(name)
File "/usr/local/lib/python3.6/tkinter/__init__.py", line 36, in <module>
import _tkinter # If this fails your Python may not be configured for Tk
ModuleNotFoundError: No module named '_tkinter'
Expected outcome
Whatever happens when import matplotlib.pyplot
succeeds
Matplotlib version
- Operating System: Windows Subsystem for Linux
- Matplotlib Version: 2.0.2
- Python Version: 3.6.0
I installed matplotlib using pip.
Doing sudo apt-get install python3-tk
, as recommended by someone on Stack Overflow, didn’t help.
Aug-02-2022, 06:51 PM
(This post was last modified: Aug-02-2022, 08:02 PM by Milan.)
Hello team,
So I installed tkinter using
pip3 install tk
But when I try to run the following code
import tkinter as tk root = tk.Tk() root.mainloop()
I get the following error:
Traceback (most recent call last): File "iwannadie.py", line 1, in <module> import tkinter as tk ModuleNotFoundError: No module named 'tkinter'
This is driving me crazy, because I have the tk lib installed
pip3 list | grep tk tk 0.1.0
And tried to import it in different ways
import tkinter as tk from tkinter import * import tk
Nothing seems to work, could you please help?
[SOLVED]
Run command
sudo apt-get install python3-tk
Posts: 1,815
Threads: 2
Joined: Apr 2017
Reputation:
85
Tkinter comes with Python. tk
that you’ve installed is something else: https://pypi.org/project/tk/.
It’s odd that you can’t import tkinter
, though. More information, please. Which Python version? Are you using a virtual environment, or have you got any custom set up in terms of where Python is looking for libraries?
Milan
Silly Frenchman
Posts: 25
Threads: 12
Joined: Sep 2020
Reputation:
0
Currently using python 3.8, not a virtual environment.
rob101
Minister of Silly Walks
Posts: 366
Threads: 8
Joined: Jun 2022
Reputation:
42
Aug-02-2022, 07:37 PM
(This post was last modified: Aug-02-2022, 07:56 PM by rob101.)
(Aug-02-2022, 07:17 PM)ndc85430 Wrote: Tkinter comes with Python.
Not always: I had to sudo apt-get install python3-tk
on my Linux system.
Quote:Ubuntu Linux 20.04:
To conserve memory space, the default version of the Python interpreter that comes pre-installed on Ubuntu Linux 20.04 has no support for Tkinter. However, if you want to continue using the Python interpreter bundled with your operating system, then install the following package:
link: https://realpython.com/python-gui-tkinter/
Sig:
>>> import this
The UNIX philosophy: «Do one thing, and do it well.»
«The danger of computers becoming like humans is not as great as the danger of humans becoming like computers.» :~ Konrad Zuse
«Everything should be made as simple as possible, but not simpler.» :~ Albert Einstein
Posts: 828
Threads: 94
Joined: Sep 2019
Reputation:
70
I usually do python3 -m pip install module. Ensures that I’m installing to the correct python version.
Milan
Silly Frenchman
Posts: 25
Threads: 12
Joined: Sep 2020
Reputation:
0
(Aug-02-2022, 07:21 PM)Milan Wrote: Currently using python 3.8, not a virtual environment.
Running sudo apt-get install python3-tk
solved it, I am also on linux. Thank you very much.
Posts: 11,651
Threads: 450
Joined: Sep 2016
Reputation:
445
Posts: 523
Threads: 0
Joined: Feb 2018
Reputation:
35
FYI, if your software manager does not resolve dependencies like Ubuntu does. you may also have to install TCL and TK. Tkinter is just a Python wrapper around the tool kit.
Gribouillis likes this post
если версия python 2.7 к примеру то там надо писать Tkinter а не tkinter
- Ссылка
по дефолту он всегда есть, какая версия python то?
- Ссылка
плюсую товарища выше — ты установил python-tk, а он для второго питона. python3-tk нужно
gnunixon ★★★
(27.10.20 23:10:30 MSK)
- Показать ответ
- Ссылка
На будущее. Что бы не возникало казусов вроде смешивания пакетов python-tk и python3-tk, устанавливай питоновские пакеты через pip, а не через системный менеджер пакетов.
Aswed ★★★★★
(28.10.20 11:26:30 MSK)
- Показать ответ
- Ссылка
Ответ на:
комментарий
от fsb4000 27.10.20 22:59:05 MSK
Спасибо вам большое! Работает!!!!!!
mike15
(28.10.20 14:43:57 MSK)
- Ссылка
Ответ на:
комментарий
от Aswed 28.10.20 11:26:30 MSK
устанавливай питоновские пакеты через pip, а не через системный менеджер пакетов.
Совет от debiloida и полнейшего idiotes.
anonymous
(28.10.20 15:20:28 MSK)
- Показать ответ
- Ссылка
Ответ на:
комментарий
от anonymous 28.10.20 15:20:28 MSK
Куда уж мне до анонимусов на лоре. Смотри не увлекайся коментами, а то на математику опоздаешь.
Aswed ★★★★★
(29.10.20 12:22:12 MSK)
- Ссылка
Ответ на:
комментарий
от gnunixon 27.10.20 23:10:30 MSK
$ sudo python3 -m pip install python3-tk
...
ERROR: Could not find a version that satisfies the requirement python3-tk (from versions: none)
ERROR: No matching distribution found for python3-tk
Можете подсказать, ЧЯДНТ?
zad1ra
(29.10.20 17:35:26 MSK)
Последнее исправление: zad1ra 29.10.20 17:35:56 MSK
(всего
исправлений: 1)
- Показать ответ
- Ссылка
29 июля 2022 г.
Ответ на:
комментарий
от zad1ra 29.10.20 17:35:26 MSK
Аналогичная проблема. Линукс вот какой:
root@porteus:/tmp# uname -a
Linux porteus 4.9.0-porteus #1 SMP PREEMPT Sun Dec 18 16:24:27 Local time zone must be set-- i686 Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz GenuineIntel GNU/Linux
Как это лечить?
- Показать ответ
- Ссылка
Ответ на:
комментарий
от senglory 29.07.22 19:29:47 MSK
Ответ на:
комментарий
от vvn_black 29.07.22 21:30:59 MSK
Неа, не помогло:
root@porteus:/tmp# pip install tk
Collecting tk
Downloading tk-0.1.0-py3-none-any.whl (3.9 kB)
Installing collected packages: tk
Successfully installed tk-0.1.0
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv
root@porteus:/tmp# pip install python3-tk
ERROR: Could not find a version that satisfies the requirement python3-tk (from versions: none)
ERROR: No matching distribution found for python3-tk
root@porteus:/tmp#
- Показать ответ
- Ссылка
Ответ на:
комментарий
от senglory 29.07.22 23:30:13 MSK
Ответ на:
комментарий
от vvn_black 29.07.22 23:31:21 MSK
Но python3-tk как не ставился , так и сейчас не ставится. Что у меня неправильно сделано?
- Показать ответ
- Ссылка
Ответ на:
комментарий
от senglory 29.07.22 23:35:53 MSK
Извинения, я затупил. Дистрибутивный python должен быть собран с поддержкой tk.
vvn_black ★★★★★
(29.07.22 23:48:40 MSK)
Последнее исправление: vvn_black 29.07.22 23:56:57 MSK
(всего
исправлений: 1)
- Ссылка
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.