Python GUI開發工具選擇

來源:互聯網
上載者:User
Python最大的特點就在於她的快速開發功能。作為一種膠水型語言,python幾乎可以滲透在我們編程過程中的各個領域。這裡我簡單介紹一下用python進行gui開發的一些選擇。

1.Tkinter

  Tkinter 似乎是與tcl語言同時發展起來的一種介面庫。tkinter是python的配備的標準gui庫,也是opensource的產物。Tkinter可用於windows/linux/unix/macintosh作業系統,而且顯示風格是本地化的。Tkinter用起來非常簡單,python內建的 IDLE就是採用它寫的。除此外,tkinter的擴充集pmw和Tix功能上都要相對它強大,但tkinter卻是最基本的。我認為,在用python 做gui開發,tkinter是最基本的知識,所以這個環節是必須要學習的。你或許在以後的開發中並不常用tkinter,但是一些小型的應用上面,他還是很有用的,而且開發速度也很快。

2.WxPython

  WxWidgets應該算是近幾年了比較流行的GUI跨平台開發技術了。 wxWidgets有不同的版本應用,有c++的,也有basic的,現在在python上面也有較好的移植。wxpython的功能上面要強於 tkinter,她提供了超過200個類,物件導向的編程風格,設計的架構類似於MFC。對於大型GUI應用上面,wxPython還是具有很強的優勢的。boa constructor可以協助我們快速可視地構建wxwidgets介面。

3.PyQT

  Qt同樣是一種開源的GUI庫,Qt的類庫大約在300多個,函數大約在5700多個。Qt同樣適合於大型應用,由它內建的qt designer可以讓我們輕鬆來構建介面元素。

4.pyGtk

  Gtk是linux下Gnome的核心開發庫了。功能上面非常齊全。值得說明的是,在windows平台下gtk的顯示風格並不是特別本地化。不過他帶的glade的介面設計器還是可以幫你省不少事的。

5.Jython

  嘗試過用python訪問java類庫嗎,那麼就用jython吧。jython其實可以認為是另外一個python開發環境,基於java的,但是大多數的CPython調用jython下還是可以的。你可以在jython環境下像使用java一樣來通過python的文法來調用java語言,真的很酷。

6.MFC

  Windows Pywin32允許你像VC一樣的形式來使用PYTHON開發win32應用。代碼風格可以類似win32 sdk,也可以類似MFC,由你選擇。如果你仍不放棄vc一樣的代碼過程在python下,那麼這就是一個不錯的選擇。

7.PythonCard

  PythonCard其實是對wxPython的再封裝。不過封裝的更加簡單,使用起來覺得比wxPython更直觀,也更簡單化了。

8.Dabo

  仍是一個基於wxpython的再封裝庫,沒用過,不太瞭解。它提供資料庫訪問,商業邏輯以及使用者介面。

9.AnyGui

  通過底層的api來訪問其它工具集,像tkinter,wxpython和qt.具體也沒怎麼用過。

10.WPY

  MFC風格的Gui開發庫,代碼風格也類似於MFC,僅管如此,你依舊可以使用這個庫來開發GUI應用,而不用擔心平台移植的問題。她同樣是一個跨平台的庫。

11.IronPython

  如果你要想開發.net下面的應用的話,那麼IronPython就是你的選擇,與jython有點類似,他同樣支援標準的python模組,但同樣增加了對.net庫的支援。你也可以理解為他是另一個python開發環境。你可以非常方便地使用python文法進行.net應用的開發,這一點聽起來真的挺有意思。

  總之,介紹了這麼多,我個人意見是,如果你是java使用者,那麼你就用jython吧,除了可以享受python的模組功能及文法外,你可以找到許多java的影子;如果你是.net使用者,那麼就用iron python吧。如果你對Visual C++很熟悉,那麼你可以使用MFC,WPY或是wxPython,當然我更建議wxPython了。當然,我認為對於tkinter是每一個原來搞C的人都應該瞭解和學習的GUI庫,因為她很輕便,小型應用就可以使用她來搞定,而對於較大型應用可以採用pyGtk,pyQt,WxPython或 PythonCard來搞定,這樣的話,既可以注重知識的銜接性,也可以快速進行軟體的開發了。

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.