2017-02-18 61 views
-1

Python應用程序:爲什麼使用Python代碼「from tkinter import ttk」?使用TK的GUI通常所說以下import語句

from tkinter import * 
from tkinter import ttk 

並沒有叫from tkinter import ttk多餘?我以爲TTK會已經通過調用from tkinter import *

請解釋爲什麼TTK需要單獨進口的進口?

(我已經明白,它有「改進小部件」,我想知道爲什麼改進的部件無法從from tkinter import *電話訪問。)

+1

不要你的意思'ttk'? –

+0

看看[這](http://stackoverflow.com/questions/19883870/python-from-x-import-not-importing-everything)。 –

+0

@AndrewGuy是的,這是我提到OP的同一個問題。 –

回答

3

如果你到你的Python安裝的位置,你會發現在python庫中,tkinter是一個文件夾而不是.py文件。所以當你使用from tkinter import *時,你實際上只輸入your-python-location/lib/tkinter/__init__.py中的東西。像TTK東西實際上是Tkinter的文件夾(例如LIB/Tkinter的/ ttk.py,LIB/Tkinter的/ scrolledtext.py等)。因此,from tkinter import *from tkinter import tkk是從不同的模塊中導入的東西不同的命令獨立的文件。

+0

該胎面已被標記爲重複。總之,另一個線程內回答說,「從模塊導入一些語法不導入子模塊(其中,作爲另一個答案所述,不是在'__all__'定義」因此,將一個文件夾內是__init__.py,或'__all__'可能在另一個x.py文件中 – user12711

相關問題