




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、Python語言程序設(shè)計平時作業(yè)姓名:賀濤學號:201 . Python語言有哪些數(shù)據(jù)類型數(shù)值類型(整型、浮點型、復數(shù)型)、布爾型、字符串、列表、元組、字典 和集合等2 . Python語言有哪些運算符請列表說明它們各自的運算優(yōu)先級。算術(shù)運算符、位運算符、關(guān)系運算符、邏輯運算符、賦值運算符、成員運算符、身 份運算符等3 . Python語言有哪些語句if語句、while 語句、for語句4 .簡述元組與列表的異同。并簡述它們各自的用途。Python元組和列表一樣,都是有序序列,在很多情況下可以相互替換,很 多操作也類似,但它們也有區(qū)別:元組是不可變的序列類型,元組能對不需要改變的數(shù)據(jù)進行寫保護
2、, 使數(shù)據(jù)更安全。列表是可變的序列類型,可以添加、刪除或搜索列表中的元 素。元組使用小括號定義用逗號分隔的元素,而列表中的元素應該包括 在中括號中。雖然元組使用小括號,但訪問元組元素時,要使用中括號按索 引或分片來獲得對應元素的值。元組可以在字典中作為關(guān)鍵字使用,而列表不能作為字典關(guān)鍵字使 用,因為列表不是不可改變的。只要不嘗試修改元組,那么大多數(shù)情況下把它們作為列表來進行操作用途:列表可被用于保存多個互相獨立對象的數(shù)據(jù)集合元組用于描述一個不會改變的事務(wù)的多個屬性5 .簡述字典和集合的異同。并簡述它們各自的用途。字典和集合的數(shù)據(jù)元素之間沒有任何確定的順序關(guān)系,屬于無序的數(shù)據(jù)集合 體,因此不能像
3、序列那樣通過位置索引來訪問數(shù)據(jù)元素。作為一種復合數(shù)據(jù)類型,字典和集合之間的主要區(qū)別在于它們的操作,字典主要關(guān)心其元素的檢索、插入和刪除,集合主要考慮集合之間的并、交和差操作。6 .請分別舉例說明遍歷列表、元組、字典和集合中各元素的方法。列表:列表與for循環(huán)語句配合使用,可實現(xiàn)對列表各個元素的遍歷。for i in list:print (" 序號:s 值:s" % (i) + 1, i)元組:元組與for循環(huán)語句配合使用,可實現(xiàn)對元組各個元素的遍歷。小例同列表。字典:遍歷字典的關(guān)鍵字:():返回一個包含字典所有關(guān)鍵字的列表,所以對字典關(guān)鍵字的遍歷轉(zhuǎn)換為對列表的遍歷。遍歷字
4、典的值:():返回一個包含字典所有值的列表,所以對字典值的遍歷轉(zhuǎn)換為對列表的遍歷。遍歷字典的元素:():返回一個包含所有(關(guān)鍵字,值)元組的列 表,所以對字典元素的遍歷轉(zhuǎn)換為對列表的遍歷。集合:集合與for循環(huán)語句配合使用,可實現(xiàn)對集合各個元素的遍 歷。7 .在Python中如何實現(xiàn)二維數(shù)組、結(jié)構(gòu)體、結(jié)構(gòu)體數(shù)組(二維表)、鏈表 請舉例說明。二維數(shù)組:列表中嵌套列表matrix=0,0,0,0,0,0,0,0,0,0,0,0結(jié)構(gòu)體:使用字典數(shù)據(jù)類型實現(xiàn)結(jié)構(gòu)體當列表的元素也是一個列表時,列表就表示二維矩陣或鋸齒陣。8 .在Python中如何實現(xiàn)棧和隊列請舉例說明。class Stack(objec
5、t): def _init_(self): =def isEmpty(self): return =def push(self,item):pop(self):if ():raise IndexError,'pop from empty stack'return peek(self):return -1def size(self):return lenclass Queue:def _init_(self, head=None):= headdef enqueue(self, new_element):peek(self):return 0def dequeue(self):r
6、eturn 請分別說明 Python 中正則表達式、 lambda 函數(shù)、裝飾器、異常處理、斷言處理各自的用途。正則表達式:正則表達式是對字符串操作的一種邏輯公式, 就是用事先定義好的一些特定字符、 及這些特定字符的組合, 組成一個“規(guī)則字符串”, 這個“規(guī)則字符串”用來表達對字符串的一種過濾邏輯。lambda 函數(shù): 是指沒有函數(shù)名的簡單函數(shù),只可以包含一個表達式,不允許包含其他復雜的語句,表達式的結(jié)果是函數(shù)的返回值。用匿名函數(shù)有個好處,因為函數(shù)沒有名字,所以不必擔心函數(shù)名沖突。裝飾器: 可簡單地理解為一個函數(shù),這是一個用來包裝函數(shù)的函數(shù),經(jīng)常用于為已經(jīng)存在的函數(shù)添加額外的功能。當多個函數(shù)有
7、重復代碼時,可以將此部分代碼單獨拿出來整理成一個裝飾器,然后對每個函數(shù)調(diào)用該裝飾器,這樣可以實現(xiàn)代碼的復用,而且可以讓原來的函數(shù)更輕便。 當需要為多個己經(jīng)寫好的函數(shù)添加一個共同功能,例如檢查參數(shù)的合法性時, 就可以單獨寫一個檢查合法性的裝飾器,然后在每個需要檢查參數(shù)合法性的函數(shù)處調(diào)用即可,而不用去每個函數(shù)內(nèi)部修改。斷言處理:10. 請分別舉例說明,在Python 中函數(shù)的實在參數(shù)與形式參數(shù)間單向和雙向傳遞數(shù)據(jù)是如何實現(xiàn)的。函數(shù)的位置參數(shù)與關(guān)鍵字參數(shù)有何區(qū)別在 Python 中,實參向形參傳送數(shù)據(jù)的方式是“值傳遞” ,即“拷貝”或“復 制” 。 實參的值傳給形參,是對象間整體賦值,是一種單向傳遞
8、方式,不能由形參傳回給實參。函數(shù)體傳入的參數(shù), 為函數(shù)體外變量引用的副本。 在函數(shù)體中改變變量指向的堆中的值, 對函數(shù)外變量有效。 在函數(shù)體中改變變量的引用, 對函數(shù)外變量無效。關(guān)鍵字參數(shù)和位置參數(shù)的區(qū)別:函數(shù)調(diào)用時的參數(shù)通常采用按位置 匹配的方式, 即實參按順序傳遞給相應位置的形參。實參的個數(shù)應與形參個數(shù)必須完全相等。在函數(shù)調(diào)用中使用關(guān)鍵字參數(shù), 是指通過形式參數(shù)的 名稱 來指示為哪個形參傳遞什么值,這可以跳過某些參數(shù)或脫離參數(shù)的順序。11. 請簡述 Python 中類對象與實例對象、類屬性與實例屬性各自的區(qū)別并簡述它們各自的用途。類對象與實例對象的區(qū)別: 在一個類中, 類對象只有一個, 但
9、實例對象可以有多個。類對象在定義類后便自然存在,而實例對象需要人為創(chuàng)建。類屬性與實例屬性的區(qū)別: 實例屬性是實例對象所特有的。 類對象并不擁有實例屬性, 所以不能通過類對象來訪問實例屬性。 實例屬性也只能用實例對象來訪問, 不能用類對象來訪問實例屬性。 類屬性即可用類對象訪問, 也可用實例對 象訪問。用途:12. 請簡述 Python 中類方法、實例方法、靜態(tài)方法各自的區(qū)別并簡述它們各自的用途。實例方法只能用實例對象來調(diào)用,不能用類對象來調(diào)用實例方法。類方法: 類方法是類對象所擁有的方法,類方法的第一個參數(shù)必須是類對象,可以通過實例對象和類對象去訪問類方法,類方法可以對類屬性進行修改。實例方法
10、: 實例方法是類中最常定義的成員方法,它至少有一個參數(shù)并且必須以實例對象作為其第一個參數(shù), 在類外實例方法只能通過實例對象去調(diào)用,不能通過其他方式去調(diào)用。靜態(tài)方法:靜態(tài)方法需要通過修飾器“ staticmethod ”來進行修飾,靜態(tài)方法不需要多定義參數(shù)。 靜態(tài)方法中不需要額外定義參數(shù),因此如果在靜態(tài)方法中引用類屬性,則必須通過類對象來引用。13. 請舉例說明Python面向?qū)ο蟮亩鄳B(tài)性(例如函數(shù)重載、運算符重載) 是如何實現(xiàn)的父類和多個子類中都有同名的方法,雖然方法同名,但該方法在不同類中的行為是不同的。當向一個對象發(fā)送消息(即調(diào)用該方法)時,所得結(jié)果取決于是 哪一個對象接收。多個不同的對象
11、都支持相同的消息,但各對象響應消息的行為 不同,這種能力就是多態(tài)性的體現(xiàn),即同一操作在不同的上下文環(huán)境中具有不同 形態(tài)的意思。14. 請分別簡述利用thinter 模塊、turtle 模塊和graphics模塊繪圖時各 自的繪圖步驟。thinter 模塊:1. 導入Tkinter 模塊2. 創(chuàng)建控件3. 指定這個控件的master ,即這個控件屬于哪一個4. 告訴GM(geometry manager)有一個控件產(chǎn)生了。turtle 模塊:1. 引入turtle 模塊2. 創(chuàng)建畫布。調(diào)用turtle 中的Pen函數(shù)。3. 移動海龜。4. 提起畫筆graphics 模塊:1. 導入graphic
12、s模塊包2. 使用 GraphWin3. 調(diào)用Point()類,設(shè)置X坐標和Y坐標4. 調(diào)用draw()方法,繪制15 .簡述使用tkinter模塊創(chuàng)建一個圖形用戶界面應用程序的主要步驟。1. 導入Tkinter模塊2. 創(chuàng)建一個頂層窗口對象,來容納你的整個GUI程序3. 在你的頂層窗口對象上(或者其中)創(chuàng)建所有的GUI模塊(以及功能)4. 把這些GUI模塊與底層代碼相連接5. 進入主事件循環(huán)16 .在tkinter模塊中事件綁定方式有哪幾種并簡述它們各自的用途。(event ,handler)使用frame的bind方法將一個callback 方法綁定到一個事件綁定至U widget ins
13、tance 使用 bind 方法綁定到widget的toplevel windows ,頂層窗口,也是用 bind綁定至U widget class ,使用 bind_class17 .請用Python語言編寫一個簡易的系統(tǒng)登錄程序。importimport tkintermy_window = () # 生成 my_window主窗口('welcome my_window') # 設(shè)置窗 口標題cv = (my_window,bg='lightcyan') # 用畫布設(shè)置窗 口 的顏色 ()('200x150') # 設(shè)置窗口大小# label
14、 標簽(用戶名和密碼的變量)varName = () #文字變量儲存器器('admin')varPwd =()('123456')# 創(chuàng)建賬戶的標簽labname = (my_window,text=' 用戶名',justify=,bg='pink',width=80) (x=10,y=5,width=80,height=20)# 創(chuàng)建文本框,同事設(shè)置關(guān)聯(lián)變量enterName = (my_window,width=80,textvariable=varName)(x=100,y=5,width=80,height=20)# 創(chuàng)建
15、密碼的標簽和文本框labPwd = (my_window,text=' 密碼 ',justify=,bg='pink',width=80)(x=10,y=30,width=80,height=20)enterPwd = (my_window,show='*',width=80,textvariable=varPwd)(x=100,y=30,width=80,height=20)# 登錄按鈕事件處理函數(shù)def login():Name = ()Pwd = ()if Name ='admin' and Pwd = '12345
16、6':'Python tkinter',message='登錄成功! ! ')else:'python tkinter',message='登錄失敗 ')# 創(chuàng)建按鈕組件,并且設(shè)置按鈕事件的處理函數(shù)buttonOK = (my_window,text = 'login',background='lightskyblue',command = login()(x=30 , y=70 , width=50,height=20)# 取消按鈕的時間處理函數(shù)def cancel():# 清空用戶輸入的
17、用戶名和密碼('')('')buttonCancel =(my_window,text='Cancel',background='lightgray',command=cancel()(x=100,y=70,width=50,height=20)# 啟動消息循環(huán)()18.請用Python語言編寫一個簡易的計算器程序from tkinter import * reset=Truedef buttonCallBack(event):global label global reset num='text' if num=
18、'C':label'text'="0" returnif num in "=":label'text'=str(eval(label'text') reset=True returns=label'text'if s='0' or reset=True:reset=False label'text'=s+num# 主窗口root=Tk() _|("計算器")# 顯本欄1label=Label(root,text="
19、0",background="white",anchor="e")label'width'=35label'height'=2(row=1,columnspan=4,sticky=W)# 按鈕showText="789/456*+"for i in range(4):for j in range(4):b=Button(root,text=showTexti*4+j,width=7) (row=i+2,column=j)("<button-1>",buttonC
20、allBack)showText="()"for i in range(2):b=Button(root,text=showTexti,width=7)(row=6,column=2+i)("<button-1>",buttonCallBack)b=Button(root,text="=")(row=6,columnspan=2,sticky="we")("<button-1>",buttonCallBack)()</button-1></button-
21、1></button-1>19 .請用Python語言編寫一個簡易的猜數(shù)字游戲程序。import randomanswer = (1,10)print('猜數(shù)游戲')num=input('請輸入你猜測的數(shù)字n')guess=int(num)n=0while n<2:if guess = answer and n=0:print('么么噠。對啦')print('厲害了一次就對了 ')breakif guess < answer:print(' 不對哦,太小了 )elif guess > a
22、nswer :print('不對哦,太大了 )elif guess=answer :print('么么噠。對啦')num=input('請你重新輸入n')guess=int(num)n=n+1if n=1 and guess=answer:print(' 可以哦,第二次就對了 ')breakelif n=2 and guess =answer:print(' 還行,終于猜出來了 )breakelif n=2 and guess !=answer :print(' 不行哦,三次都不對')breakprint('
23、; 游戲結(jié)束 ')20 . 請用 Python 語言編寫一個簡易的通訊錄管理程序。mydic=while True:print("="*7," 通訊錄管理系統(tǒng)","="*7)print("1. 增加姓名和手機")print("2. 刪除姓名 ")print("3. 修改手機號")print("4. 查詢所有用戶 ")print("5.根據(jù)姓名查找手機號")print("6.退出")print("="*
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 項目實施補充合同范本
- 單人股東協(xié)議合同范本
- 卓人潛能加盟合同范本
- 原油買賣合同范本
- 合法地基出售合同范本
- 單身購房抵押合同范本
- 三鑫股合同范本
- 合同范本社保
- 代存款保管合同范本
- 醫(yī)療智能合作合同范本
- 鋼結(jié)構(gòu)主要技術(shù)標準和要求
- 臘八粥 第一課時自學導學單
- 摻合料講義課件
- 中美關(guān)系新時代52張課件
- 鼻部整形隆鼻術(shù)精選PPT
- 《伊利乳業(yè)集團企業(yè)內(nèi)部審計存在的問題及優(yōu)化對策分析案例(論文)10000字》
- 中小學生心理健康檔案(表格)電子教案
- 反假貨幣培訓考試題庫-相關(guān)法律法規(guī)及規(guī)范性文件知識考題
- 體育《網(wǎng)球正手擊球》教學PPT
- 離心機操作規(guī)程
- PowerMILL后處理修改教程
評論
0/150
提交評論