我正在學習使用tkinter編寫事件驅動程序,并使用Fredrik Lundh的出色教程。在那篇文章中,他提到最好為框架定義一個類(App)并將該程序作為該類的實例運行,而不是像這樣啟動它:root = Tk()w = Label(root, text = 'hello, world!')w.pack()root.mainloop()我有3個問題:以這種簡單的方式進行編程是不好的編程習慣嗎?如果我確實定義了一個類,并且將回調函數綁定到小部件,這些函數是否都必須在類本身內?即我可以go在班級內部使用一個按鈕,單擊該按鈕時,它會運行班級外部定義的詳細例程嗎?然后將結果生成帶到班級之外并在班級中顯示出來是不明智的做法?本質上,我可以通過跳入和跳出類而使程序工作,但是不確定這樣做是否不好(全局變量)
3 回答

Cats萌萌
TA貢獻1805條經驗 獲得超9個贊
通常是的...對于較小的程序,可能不會有太大問題,但是隨著復雜度的增加,將內容合并到類中是一件很不錯的事情
是
不是真的...(全局變量通常是不好的做法...),但是您所描述的是消息封裝和傳遞

慕虎7371278
TA貢獻1802條經驗 獲得超4個贊
1)對于這個例子,我想不一定是錯誤的。該程序運行。真正的擔心是,當您開始制作更復雜的程序時,可能需要更結構化的格式。課堂可以提供幫助。
2)函數不必全部都在類本身內。方法可以調用外部函數。使用方法而不是功能的主要原因是該方法可以隨時訪問對象的所有屬性。您要避免函數到達對象內部以操縱屬性。
3)最好將變量傳遞給類而不是定義全局變量,這主要是因為很難維護范圍。
添加回答
舉報
0/150
提交
取消