目標:
1.編寫乙個gui,生成按鈕
2.通過偏函式,生成按鈕
3.通過裝飾器,實現按鈕輸出資訊功能
1.使用tkinter,建立乙個按鈕
**如下:
handetiandemacbook-pro:~ xkops$ cat button.py
#•執行**,效果如下圖!/usr/bin/env python
#-*- coding: utf-8 -*-
import
tkinter
#定義乙個視窗
root =tkinter.tk()
#定義乙個按鈕
b1 = tkinter.button(root, foreground='
white
', background='
blue
', text='
button1')
#包裝b1.pack()
root.mainloop()
2.通過使用偏函式定義按鈕(偏函式定義一些相通部分的內容)
**如下:
handetiandemacbook-pro:~ xkops$ cat button.py
#•執行**,測試效果!/usr/bin/env python
#-*- coding: utf-8 -*-
import
tkinter
from functools import
partial
root =tkinter.tk()
#使用偏函式定義相同的內容
mybutton = partial(tkinter.button, root, foreground='
white
', background='
blue')
b1 = tkinter.button(root, foreground='
white
', background='
blue
', text='
button1')
b2 = mybutton(text='
button2')
b3 = mybutton(text='
button3')
b4 = mybutton(text='
quit')
b1.pack()
b2.pack()
b3.pack()
b4.pack()
root.mainloop()
3.定義函式,實現點選button2按鈕,輸出"hello,world"功能,點選quit按鈕,關閉視窗功能。
**如下:
handetiandemacbook-pro:~ xkops$ cat button.py
#•執行**,點選button2和quit按鈕檢視效果!/usr/bin/env python
#-*- coding: utf-8 -*-
import
tkinter
from functools import
partial
defgreet():
"hello, world
"root =tkinter.tk()
mybutton = partial(tkinter.button, root, foreground='
white
', background='
blue')
b1 = tkinter.button(root, foreground='
white
', background='
blue
', text='
button1')
b2 = mybutton(text='
button2
', command=greet)
b3 = mybutton(text='
button3')
b4 = mybutton(text='
quit
', command=root.quit)
b1.pack()
b2.pack()
b3.pack()
b4.pack()
root.mainloop()
4.通過編寫裝飾器實現,點選不同按鈕,列印不同的資訊。
**如下:
handetiandemacbook-pro:~ xkops$ cat button.py
#•執行**,測試效果,點選button2,後台輸出"hello, world", 點選button3後台輸出"hello, python"!/usr/bin/env python
#-*- coding: utf-8 -*-
import
tkinter
from functools import
partial
defgreet(word):
defwelcome():
"hello, %s
" %word
return
welcome
root =tkinter.tk()
mybutton = partial(tkinter.button, root, foreground='
white
', background='
blue')
b1 = tkinter.button(root, foreground='
white
', background='
blue
', text='
button1')
b2 = mybutton(text='
button2
', command=greet('
world'))
b3 = mybutton(text='
button3
', command=greet('
python'))
b4 = mybutton(text='
quit
', command=root.quit)
b1.pack()
b2.pack()
b3.pack()
b4.pack()
root.mainloop()
python 偏函式 python 偏函式
functools.partial可以設定預設引數和關鍵字引數的預設值 python的functools模組提供了很多有用的功能,其中乙個就是偏函式 partial function 要注意,這裡的偏函式和數學意義上的偏函式不一樣。在介紹函式引數的時候,我們講到,通過設定引數的預設值,可以降低函式呼...
python偏函式的例項用法總結
1 當函式的引數太多,需要簡化時,使用functools.partial可以建立乙個新的函式。2 這個新的函式可以固定原始函式的部分引數,從而更容易呼叫。作用是固定乙個函式的某些引數 cijguz即設定預設值 返回乙個新函式,呼叫這個新函式會更容易。import functools int2 fun...
python純函式,偏函式
純函式 乙個函式的返回結果只依賴於他的引數,並且只執行過程裡面沒有 我們就把這個函式叫做純函式 即函式不讀取 修改外部變數,全域性變數。3個原則 變數都只在函式作用域內獲取,作為函式的引數傳入 不會產生 不會改變被傳入的資料或者其他資料 全域性變數 相同的輸入保證相同的輸出 是指函式被呼叫,完成可函...