При установке Tkinter каким-то образом устанавливается другой модуль

Я использую Linux Ubuntu 22.10.

Итак, я установил Tkinter с помощью этой команды:

python3 -m pip install tk

и вывод был в порядке:

Defaulting to user installation because normal site-packages is not writeable
Collecting tk
  Using cached tk-0.1.0-py3-none-any.whl.metadata (693 bytes)
Using cached tk-0.1.0-py3-none-any.whl (3.9 kB)
Installing collected packages: tk
Successfully installed tk-0.1.0

поэтому я попытался использовать модуль; Я написал базовый файл для отображения окна:

import tk
window = tk.Tk()
window.mainloop()

а потом мне выдали эту ошибку: AttributeError: module 'tk' has no attribute 'Tk'.

хах, странно. Я проверил, какие функции есть у модуля, и, судя по всему, не что иное, как __init__, который пуст!

Как это исправить?

Обновлено: информация может быть изменена. Этот вопрос — крушение поезда.

🤔 А знаете ли вы, что...
В Python можно легко работать с базами данных, такими как SQLite и MySQL.


99
1

Ответ:

Решено

Пакет, который вы установили, называется тк и он совершенно не связан с tkinter (хотя похожие названия неудачны); это пакет машинного обучения, также называемый TensorKit, который предоставляет несколько файлов в подкаталоге с именем structure (но на самом деле, как ни странно, в самом пакете tk ничего нет).

Для __init__.py вполне нормально быть пустым; этот файл является обязательным для пакета Python (не относящегося к пространству имен), но часто он вообще ничего не должен содержать. См. также Для чего нужен __init__.py?

Между тем, tkinter отсутствует на некоторых платформах по разным причинам. Чтобы установить tkinter в Ubuntu, apt-get install python3-tk. См. также Установите tkinter для Python.

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