1. 程式人生 > >完美解決ImportError: No module named tkinter的問題以及Tkinter 在py2和py3中的使用差別

完美解決ImportError: No module named tkinter的問題以及Tkinter 在py2和py3中的使用差別

解決ImportError: No module named  tkinter的問題

1終端輸入安裝Tkinter:

python2:

sudo apt-get install python-tk  

python3:

sudo apt-get install python3-tk  
2安裝tcl和tk
目前我下載的tcl/tk原始碼包是 tcl8.6.8-src.tar.gz 和 tk8.6.8-src.tar.gz
(1) 安裝tcl8.6.8-src.tar.gz
tar -xzvf tcl8.6.8-src.tar.gz  
cd tcl8.6.8/unix  
執行./configure指令碼生成makefile檔案
./configure  
編譯
make
安裝
sudo make install  
(2)安裝tk8.6.8-src.tar.gx:
執行./configure指令碼生成makefile檔案
./configure
編譯:
make

編譯時如果出現以下錯誤資訊:
    /home/xx/下載/tk8.6.8/unix/../generic/tk.h:96:25: 致命錯誤: X11/Xlib.h:沒有那個檔案或目錄  
    編譯中斷。  
    make: *** [tk3d.o] 錯誤 1  
由在終端執行:
sudo apt-get install libx11-dev  
接著安裝:
sudo make install  
3把下面這個常用庫都安裝上:
sudo apt-get install autoconf curl libmysqld-dev libaio-dev libjpeg62-dev libpng12-dev libfreetype6-dev libssl-dev zlib1g-dev 
sudo apt-get install  libbz2-dev libgdbm-dev  
sudo apt-get install sqlite3 libsqlite3-tcl libsqlite3-dev  
sudo apt-get install  python-bsddb3  
4安裝好後, 輸入:
python

python2:
import Tkinter  
python3:
import tkinter  
如果第4步輸入  import Tkinter   程式碼時,出現訊息,那就就問題了,我們還需要進行下一步操作:
在終端執行  sudo apt-get install python3-tk再次重複第五步,輸入  import tkinter   程式碼時沒有出現任何訊息,那就OK了。
Tkinter 在py2和py3中的使用差別

py2 與 py3 中 tkinter 的變化:
  Tkinter         → tkinter
    tkMessageBox    → tkinter.messagebox
    tkColorChooser  → tkinter.colorchooser
    tkFileDialog    → tkinter.filedialog
    tkCommonDialog  → tkinter.commondialog
    tkSimpleDialog  → tkinter.simpledialog
    tkFont          → tkinter.font
    Tkdnd           → tkinter.dnd
    ScrolledText    → tkinter.scrolledtext
    Tix             → tkinter.tix
    ttk             → tkinter.ttk