python?Gooey庫(kù)將命令行程序轉(zhuǎn)換成圖形用戶(hù)界面GUI應(yīng)用
今天給大家分享一個(gè)超神奇的python庫(kù)——Gooey https://github.com/chriskiehl/Gooey
什么是Gooey?
Gooey是一個(gè)Python庫(kù),它可以將你的命令行程序轉(zhuǎn)換成一個(gè)圖形用戶(hù)界面(GUI)應(yīng)用。這意味著你不需要重新編寫(xiě)你的程序,只需加上幾行代碼,就可以讓你的Python腳本擁有一個(gè)美觀的界面。讓我們一起來(lái)看看如何使用Gooey吧!
安裝Gooey
安裝Gooey非常簡(jiǎn)單,只需要在你的命令行工具中執(zhí)行以下命令:
pip install Gooey
確保你的Python環(huán)境已經(jīng)安裝好了,然后就可以直接安裝Gooey了。
使用例子1:基礎(chǔ)轉(zhuǎn)換器
讓我們從一個(gè)簡(jiǎn)單的例子開(kāi)始,創(chuàng)建一個(gè)將攝氏度轉(zhuǎn)換為華氏度的轉(zhuǎn)換器。首先,我們需要編寫(xiě)一個(gè)Python腳本來(lái)完成轉(zhuǎn)換邏輯。
# converter.py
from gooey import Gooey, GooeyParser
@Gooey(program_name="攝氏度轉(zhuǎn)華氏度轉(zhuǎn)換器")
def main():
parser = GooeyParser(description="將攝氏度轉(zhuǎn)換為華氏度")
parser.add_argument('Celsius', help="輸入攝氏度", type=float)
args = parser.parse_args()
celsius = args.Celsius
fahrenheit = (celsius * 9/5) + 32
print(f"{celsius}攝氏度等于{fahrenheit}華氏度")
if __name__ == '__main__':
main()
接下來(lái),只需在命令行中運(yùn)行這個(gè)腳本,Gooey就會(huì)自動(dòng)為我們生成一個(gè)圖形界面。
python converter.py

你將看到一個(gè)有輸入框的窗口,輸入攝氏度數(shù)值后點(diǎn)擊“開(kāi)始”,程序就會(huì)計(jì)算出對(duì)應(yīng)的華氏度并顯示在控制臺(tái)中。
使用例子2:文件處理器
假設(shè)我們有一個(gè)Python腳本,用于統(tǒng)計(jì)文本文件中的單詞數(shù)量?,F(xiàn)在我們想要為它添加一個(gè)GUI。
# word_counter.py
from gooey import Gooey, GooeyParser
def count_words(filepath):
with open(filepath, 'r') as file:
text = file.read()
words = text.split()
return len(words)
@Gooey(program_name="單詞計(jì)數(shù)器")
def main():
parser = GooeyParser(description="統(tǒng)計(jì)文本文件中的單詞數(shù)量")
parser.add_argument('file', widget='FileChooser', help="選擇一個(gè)文本文件")
args = parser.parse_args()
word_count = count_words(args.file)
print(f"文件中共有{word_count}個(gè)單詞。")
if __name__ == '__main__':
main()運(yùn)行這個(gè)腳本,Gooey會(huì)創(chuàng)建一個(gè)包含文件選擇器的窗口。用戶(hù)可以通過(guò)這個(gè)窗口選擇一個(gè)文本文件,然后程序會(huì)顯示出該文件中的單詞數(shù)量。
python word_counter.py
通過(guò)上述例子,我們可以清晰地看到Gooey為Python腳本帶來(lái)的便利性和易用性。它為那些想要簡(jiǎn)化他們的程序操作或者向非技術(shù)用戶(hù)提供友好界面的開(kāi)發(fā)者提供了一個(gè)極佳的解決方案。Gooey的易用性意味著你不需要深入學(xué)習(xí)復(fù)雜的GUI編程,就可以快速地將你的命令行工具轉(zhuǎn)變?yōu)橐粋€(gè)圖形化的應(yīng)用程序。
結(jié)語(yǔ)
總之,Gooey是一個(gè)強(qiáng)大的庫(kù),它可以幫助你以最小的學(xué)習(xí)成本,最大化地提升你的Python腳本的可用性。如果你還沒(méi)有嘗試過(guò)Gooey,那么現(xiàn)在就是一個(gè)好時(shí)機(jī)。把你的命令行應(yīng)用轉(zhuǎn)換成GUI,讓它們更加易于訪(fǎng)問(wèn)和使用,同時(shí)也為你的編程工具箱增添一個(gè)有趣且實(shí)用的新工具。
以上就是python Gooey庫(kù)將命令行程序轉(zhuǎn)換成圖形用戶(hù)界面GUI應(yīng)用的詳細(xì)內(nèi)容,更多關(guān)于python Gooey庫(kù)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Pygame實(shí)戰(zhàn)練習(xí)之紙牌21點(diǎn)游戲
21點(diǎn)想必是很多人童年時(shí)期的經(jīng)典游戲,我們依舊能記得抱個(gè)老人機(jī)娛樂(lè)的場(chǎng)景,下面這篇文章主要給大家介紹了關(guān)于如何利用python寫(xiě)一個(gè)簡(jiǎn)單的21點(diǎn)小游戲的相關(guān)資料,需要的朋友可以參考下2021-09-09
python人工智能tensorflow函數(shù)tf.layers.dense使用方法
這篇文章主要介紹了python人工智能tensorflow函數(shù)tf.layers.dense的使用方法,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05
LyScript實(shí)現(xiàn)對(duì)內(nèi)存堆棧掃描的方法詳解
LyScript插件中提供了三種基本的堆棧操作方法,其中push_stack用于入棧,pop_stack用于出棧,peek_stac可用于檢查指定堆棧位置處的內(nèi)存參數(shù)。所以本文將利用這一特性實(shí)現(xiàn)對(duì)內(nèi)存堆棧掃描,感興趣的可以了解一下2022-08-08
解決django中form表單設(shè)置action后無(wú)法回到原頁(yè)面的問(wèn)題
這篇文章主要介紹了解決django中form表單設(shè)置action后無(wú)法回到原頁(yè)面的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03
探究Python多進(jìn)程編程下線(xiàn)程之間變量的共享問(wèn)題
這篇文章主要介紹了探究Python多進(jìn)程編程下線(xiàn)程之間變量的共享問(wèn)題,多進(jìn)程編程是Python學(xué)習(xí)進(jìn)階中的重要知識(shí),需要的朋友可以參考下2015-05-05
如何使用python生成大量數(shù)據(jù)寫(xiě)入es數(shù)據(jù)庫(kù)并查詢(xún)操作
這篇文章主要介紹了如何使用python生成大量數(shù)據(jù)寫(xiě)入es數(shù)據(jù)庫(kù)并查詢(xún)操作,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09
關(guān)于Python常用模塊時(shí)間模塊time
這篇文章主要介紹了關(guān)于Python常用模塊時(shí)間模塊time,這個(gè)模塊是Python自帶的,我們不需要去下載,直接導(dǎo)入就可以使用,需要的朋友可以參考下2023-04-04
淺談numpy數(shù)組中冒號(hào)和負(fù)號(hào)的含義
下面小編就為大家分享一篇淺談numpy數(shù)組中冒號(hào)和負(fù)號(hào)的含義,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04
Pygame游戲開(kāi)發(fā)之太空射擊實(shí)戰(zhàn)碰撞改進(jìn)篇
相信大多數(shù)8090后都玩過(guò)太空射擊游戲,在過(guò)去游戲不多的年代太空射擊自然屬于經(jīng)典好玩的一款了,今天我們來(lái)自己動(dòng)手實(shí)現(xiàn)它,在編寫(xiě)學(xué)習(xí)中回顧過(guò)往展望未來(lái),在本課中,我們將討論如何更改?Pygame?處理精靈之間沖突的方式2022-08-08

