Python程序設(shè)計(jì)基礎(chǔ)及應(yīng)用 第6章交互界面庫教案_第1頁
Python程序設(shè)計(jì)基礎(chǔ)及應(yīng)用 第6章交互界面庫教案_第2頁
Python程序設(shè)計(jì)基礎(chǔ)及應(yīng)用 第6章交互界面庫教案_第3頁
Python程序設(shè)計(jì)基礎(chǔ)及應(yīng)用 第6章交互界面庫教案_第4頁
Python程序設(shè)計(jì)基礎(chǔ)及應(yīng)用 第6章交互界面庫教案_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

PAGEPAGE37分課時(shí)教案章節(jié)名稱第4章函數(shù)和模塊課堂教學(xué)

目的1.了解函數(shù)和模塊的定義;2.理解和掌握函數(shù)的定義方法,參數(shù)類型;3.掌握模塊的定義和引入方法;教學(xué)內(nèi)容及教學(xué)安排1.第一節(jié)課首先回顧本次課的內(nèi)容,接著導(dǎo)入本次課的內(nèi)容,模塊和函數(shù)的作用?(20min)將可能需要反復(fù)執(zhí)行的代碼封裝為函數(shù),并在需要該功能的地方進(jìn)行調(diào)用,不僅可以實(shí)現(xiàn)代碼復(fù)用,更重要的是可以保證代碼的一致性,只需要修改該函數(shù)代碼則所有調(diào)用均受到影響。設(shè)計(jì)函數(shù)時(shí),應(yīng)注意提高模塊的內(nèi)聚性,同時(shí)降低模塊之間的隱式耦合。在實(shí)際項(xiàng)目開發(fā)中,往往會(huì)把一些通用的函數(shù)封裝到一個(gè)模塊中,并把這個(gè)通用模塊文件放到頂層文件夾中,這樣更方便管理。2.第二步,介紹函數(shù)的定義以及分類。函數(shù)定義語法:def函數(shù)名([參數(shù)列表]):'''注釋'''函數(shù)體注意事項(xiàng)函數(shù)形參不需要聲明其類型,也不需要指定函數(shù)返回值類型即使該函數(shù)不需要接收任何參數(shù),也必須保留一對空的圓括號括號后面的冒號必不可少函數(shù)體相對于def關(guān)鍵字必須保持一定的空格縮進(jìn)Python允許嵌套定義函數(shù)Python是一種高級動(dòng)態(tài)編程語言,變量類型是隨時(shí)可以改變的。Python中的函數(shù)和自定義對象的成員也是可以隨時(shí)發(fā)生改變的,可以為函數(shù)和自定義對象動(dòng)態(tài)增加新成員。3.然后是函數(shù)定義時(shí)括弧內(nèi)為形參,一個(gè)函數(shù)可以沒有形參,但是括弧必須要有,表示該函數(shù)不接受參數(shù)。函數(shù)調(diào)用時(shí)向其傳遞實(shí)參,將實(shí)參的值或引用傳遞給形參。在定義函數(shù)時(shí),對參數(shù)個(gè)數(shù)并沒有限制,如果有多個(gè)形參,需要使用逗號進(jìn)行分割。4.最后是參數(shù)類型。在Python中,函數(shù)參數(shù)有很多種:可以為普通參數(shù)、默認(rèn)值參數(shù)、關(guān)鍵參數(shù)、可變長度參數(shù)等等。Python在定義函數(shù)時(shí)不需要指定形參的類型,完全由調(diào)用者傳遞的實(shí)參類型以及Python解釋器的理解和推斷來決定,類似于重載和泛型。Python函數(shù)定義時(shí)也不需要指定函數(shù)的類型,這將由函數(shù)中的return語句來決定,如果沒有return語句或者return沒有得到執(zhí)行,則認(rèn)為返回空值None。5.最后總結(jié)本次課內(nèi)容。(10min)重點(diǎn)、難點(diǎn)以及對策重點(diǎn)難點(diǎn):函數(shù)參數(shù)的類型。解決對策:通過實(shí)例啟發(fā)式講解。教學(xué)方法和手段講授、演示、討論、使用多媒體。教具PPT作業(yè)、思考題及課外推薦資源課后記

分課時(shí)教案章節(jié)名稱第6章交互界面庫課堂教學(xué)

目的1.掌握Tinkter庫的常用控件的使用2.PyQt建立交互界面的方法教學(xué)內(nèi)容及教學(xué)安排1.第一節(jié)課首先演示Tinkter庫的案例,提高學(xué)生學(xué)習(xí)興趣,接著導(dǎo)入本次課的內(nèi)容,簡介Tinkter庫等等。(10min)2.第二步,介紹Tinkter常用控件的使用方法。(70min)(1)控件共有屬性(2)窗口個(gè)常用方法(3)標(biāo)簽控件屬性及常用方法(4)文本框?qū)傩约俺S梅椒ǎ?)菜單控件屬性及常用方法(6)列表框控件屬性及常用方法(7)按鈕控件屬性及常用方法(8)對話框?qū)傩约俺S梅椒ǎ?)PyQt庫簡介綜合案例-計(jì)算器fromPyQt5.QtCoreimport*fromPyQt5.QtGuiimport*fromPyQt5.QtWidgetsimport*fromcalculatorimportUi_Formimportos,sysglobale_viewclassMyMainWindow(Ui_Form,QWidget):#實(shí)現(xiàn)界面的信號與槽機(jī)制,將界面每一個(gè)按鈕信號與相應(yīng)槽函數(shù)進(jìn)行匹配。defforge_link(self):self.b_0.clicked.connect(self.button_event(0))self.b_1.clicked.connect(self.button_event(1))self.b_2.clicked.connect(self.button_event(2))self.b_3.clicked.connect(self.button_event(3))self.b_4.clicked.connect(self.button_event(4))self.b_5.clicked.connect(self.button_event(5))self.b_6.clicked.connect(self.button_event(6))self.b_7.clicked.connect(self.button_event(7))self.b_8.clicked.connect(self.button_event(8))self.b_9.clicked.connect(self.button_event(9))self.b_add.clicked.connect(self.button_event('+'))self.b_sub.clicked.connect(self.button_event('-'))self.b_mul.clicked.connect(self.button_event('*'))self.b_div.clicked.connect(self.button_event('/'))self.b_pow.clicked.connect(self.button_event('**'))self.b_bra_l.clicked.connect(self.button_event('('))self.b_bra_r.clicked.connect(self.button_event(')'))self.b_mod.clicked.connect(self.button_event('%'))self.b_pai.clicked.connect(self.button_event('3.1415926'))self.b_pt.clicked.connect(self.button_event('.'))self.b_del.clicked.connect(self.delete_event)self.b_clc.clicked.connect(self.clear_event)self.b_eq.clicked.connect(self.calc_complish)def__init__(self,parent=None):super(MyMainWindow,self).__init__(parent)#初始化self.setupUi(self)#對用Qtdesinger畫好的界面進(jìn)行初始化self.setWindowTitle('計(jì)算器')self.forge_link()#連接槽函數(shù)#對按鈕點(diǎn)擊做出反應(yīng)defbutton_event(self,arg):#print(dir(self.e_view))globale_viewe_view=self.e_viewdeffun():#返回一個(gè)自定義的槽函數(shù)globale_viewtxt=e_view.toPlainText()e_view.setText(txt+str(arg))returnfun#計(jì)算器計(jì)算部分defcalc_complish(self):txt=self.e_view.toPlainText()ans=''try:ans=str(eval(txt))#eval函數(shù)可自動(dòng)計(jì)算參數(shù)txt結(jié)果exceptBaseException:ans='MathError'#print(ans)self.clear_event()self.e_view.setText(ans)self.l_hist.addItem(txt+'='+ans)#計(jì)算器點(diǎn)擊清空功能defclear_event(self):self.e_view.setText('')#計(jì)算器點(diǎn)擊刪除功能defdelete_event(self):txt=self.e_view.toPlainText()txt=txt[:len(txt)-1]self.e_view.setText(txt)#創(chuàng)建APPif__name__=='__main__':app=QApplication(sys.argv)myWin=MyMainWindow()#創(chuàng)建一個(gè)對象myWin.show()sys.exit(app.exec())#退出3.最后總結(jié)本次課內(nèi)容。(10min

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論