ImportError: 'Tkinter' adlı modül yok


208

Nedense, Tkinterveya tkintermodülünü kullanamıyorum . Python kabuğunda aşağıdaki komutu çalıştırdıktan sonra

import Tkinter

veya

import tkinter

Bu hatayı aldım

ModuleNotFoundError: 'Tkinter' adlı modül yok

veya

ModuleNotFoundError: 'tkinter' adlı modül yok

Nedeni ne olabilir ve bunu nasıl çözebiliriz?


7
Install python onunla birlikte gelmiyor mu?
RasmusGP

Hangi sürümü kullandığınıza bağlıdır?
Zeb

Sorun, yanlış python sürümünün yüklü olması ve tüm modüllerin şu anda yüklü olmaması sayesinde oldu :)
RasmusGP 22:14

12
Bu soru neden kapalı? Bu, aradığımda benim için ilk gelen konu ModuleNotFoundError: No module named 'tkinter've buradaki içeriğin alakalı olduğunu düşünüyorum.
ScottMcC

13
Ubuntu'da Hey Googler! sudo uygun-get install python3-tk ; Aşağıdaki sihirbaz harrypotter0 tüm kredi ama bu yorum biraz kat altında;)
Two-Bit Alchemist

Yanıtlar:


333

Muhtemelen aşağıdakilerden birini (veya benzer bir şeyi) kullanarak yüklemeniz gerekir:

sudo apt-get install python3-tk 

sudo dnf install python3-tkinter

Bir süredir Tkinter kullanıyorum. Neden bunu denemiyorsun ve işe yarayıp yaramadığını bana bildirmiyorsun?

try:
    # for Python2
    from Tkinter import *   ## notice capitalized T in Tkinter 
except ImportError:
    # for Python3
    from tkinter import *   ## notice lowercase 't' in tkinter here

İşte referans linki ve burada doc

Burada önerildiği gibi sürümleri kontrol etmek daha iyidir :

if sys.version_info[0] == 3:
    # for Python3
    from tkinter import *   ## notice lowercase 't' in tkinter here
else:
    # for Python2
    from Tkinter import *   ## notice capitalized T in Tkinter

Yoksa hata alırsın ImportError: No module named tkinter

DÜZENLEME 1: Sadece bu cevabı daha genel hale getirmek için aşağıdaki yorumlardan ödünç aldım. Fedora'da lütfen aşağıdaki komutlardan birini kullanın

sudo dnf install python3-tkinter-3.6.6-1.fc28.x86_64

veya

sudo dnf install python3-tkinter

Python komut dosyasında #! / Usr / bin / env python3'te shebang kullanabilirsiniz
Shigiang Liu

1
Fedora'lı olanlar yüklemek için bu komutu çalıştırır: - sudo dnf install python3-tkinter-3.6.6-1.fc28.x86_64
Devendra Bhat

Beni kapitalize eden değişimlerdi (Tkinter'den tkinter'e) - herkesin tüm örnek kodlarını güncellemesi gerekiyor :)
Guy Starbuck

Standart bir python arayüzü ise neden kurulması gerekiyor ?
Marko

@DevendraBhat yorum ne ekledi. Fedora'da yükleme için "sudo dnf install python3-tkinter" kullanabilirsiniz.
Kelly Bang

68

Python 3'ü kullandığınızda, modül belgelerindetkinter belirtildiği gibi yeniden adlandırılmıştır. :

Not Tkinter, Python 3'te tkinter olarak yeniden adlandırılmıştır. 2to3 aracı, kaynaklarınızı Python 3'e dönüştürürken içe aktarmaları otomatik olarak uyarlayacaktır.


9

Windows 10 için, Python'da "tcl / tk ve IDLE" opsiyonel kurulumunu kontrol etmek önemlidir. Aksi takdirde bir ModuleNotFoundError: 'tkinter' adlı bir modül almazsınız . Benim durumumda, "pip install tkinter" gibi bir şeyle Python kurulumundan sonra tkinter'i kurmak mümkün değildi


Haklısın, Python "gömülebilir zip dosyası" tk içermiyor, "yürütülebilir yükleyiciyi" indirmeli ve "tcl / tk ve IDLE" seçeneğini seçmeyi unutmamalıyız
tinyhare

5
Python yükleyicisini yeniden başlatarak ve "Değiştir" i seçerek bir python kurulumunu değiştirebilirsiniz. Bu noktada "tcl / tk ve IDLE" onay kutusunu işaretleyebilir ve ihtiyacınız olan modülü alabilirsiniz.
Sergio Morstabilini

6

İçin , Windows 10 Python 3.7.4 ile VSCode veya pycharm kullanarak - Emin Tk yüklemek içinde işaretli olduğundan emin olun. import tkinter as xyzÜst / alt t ve k 'ları ve tüm varyantları şanssız denedim .

İşe yarayan:

import tkinter
import _tkinter
tkinter._test()

Eylemdeki bir örnek:

import tkinter
import _tkinter

HEIGHT = 700
WIDTH = 800

root = tkinter.Tk()

canvas = tkinter.Canvas(root, height = HEIGHT, width=WIDTH)
canvas.pack()

frame = tkinter.Frame(root, bg='red')
frame.pack()

root.mainloop()

Direclty içe aktarmanın _tkinterherhangi bir etkisi olduğunu düşünmüyorum . tkinterotomatik olarak içe aktarır.
Bryan Oakley

@BryanOakley Bunun bir etkisi olduğunu düşünmüyorum . Bu düzeltme ve en az 5 diğerleri için bir şey üzerine yemin edebilirim. O zaman bir böcek olmalı.
Jeremy Thompson

5

Belirli sürümünüz için yüklemeniz gerekebilir, örneğin python'un birçok sürümünü kullanırken bir sanal sürümünde bir sürümü kullandığımda bunun gerekli olduğu bilinen durumlar var, örneğin python 3.7 kullanarak tkinter ithal etmiyordum özellikle.

Örneğin

sudo apt-get install python3.7-tk 

Neden olduğu hakkında bir fikrim yok - ama bu gerçekleşti.


Çok teşekkür ederim! Farklı şekillerde yüklemeye çalıştım ve bir nedenle, python3.7 onu içe aktaramadı. Ama çözümünüz işe yaradı!
MehmedB

3

Python kodunuzu çalıştırırken python3 bağlamında olduğundan emin olun . Ben aynı sorunu vardı ve tek yapmam gereken komutu girmek oldu:

sudo python3 REPLACE.py

karşı

sudo python REPLACE.py

python1 veya python2'de tkinter görünüşte kullanılamadığı için ikinci kod yanlıştır.


2

komutunu kullanarak kurduğunuz python sürümünü kontrol edin python --version

Aşağıdaki koddan Tk modülünün doğru takıldığını kontrol edin

sudo apt-get install python3-tk 

Açık kaynaklı işletim sistemi kullanıp kullanmadığınızı kontrol edin.

tkinter modülünü aşağıdaki yoldan kontrol edin / home / python / site-paketleri / tkinter yolu sisteminize göre değiştirin


1

Sadece yüklemeniz ve projenizi şu şekilde içe aktarmanız gerekir:

bu kod komut satırına aktarılır:

sudo apt-get install python3-tk 

ithalat sonra tkinter projenizi:

from tkinter import *

1

CentOS7'de, Python2 ile çalışabilmek için şunları yapmak zorundaydım:

yum -y install tkinter

Burada bir pip paketi olacağını düşündüğüm için buraya dikkat çekiyorum, ancak bunun yerine, bir rpm yüklemesi gerekiyor.


1

tkinter python ile geliyor ... python'u kaldırın, yeniden yükleyin, işiniz bitti


1

Görevler için uygun olup olmadığını kontrol edin, kaldırılmak üzere işaretlenebilir

sudo apt autoremove

Sonra gerekli kontrol ve kurulum


1

--------- PYTHON 2.7 ÇALIŞMASI ------------

Aşağıdaki paketlerin tümünü yükle

sudo apt-get install git
sudo apt-get install python-tk
sudo apt-get install python-pip
sudo apt install picolisp
sudo -H pip2 install --upgrade pip
sudo pip install -I pillow
sudo apt-get install python-imaging-tk
sudo apt-get install python-tk

1

tkinter en son python ile gelmelidir, ben python 2 ile geliyor sanmıyorum. ben aynı sorunu vardı ama bir kez ben python 3.8 tkinter yükseltildi yüklü


1

pycharm'da çalışmazsa, modülü + düğme python-tkinter içinde arayarak ve indirerek projeyi proje yorumlayıcısına ekleyebilirsiniz.



-1

Python'unuzu yeniden yükleyin, ardından from tkinter import *kodunuza aktarmak için kullanın . umarım yardımcı olur

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.