Python編程基礎(chǔ)與應(yīng)用 第2版 題庫試題及答案 - 判斷題、簡答題_第1頁
Python編程基礎(chǔ)與應(yīng)用 第2版 題庫試題及答案 - 判斷題、簡答題_第2頁
Python編程基礎(chǔ)與應(yīng)用 第2版 題庫試題及答案 - 判斷題、簡答題_第3頁
Python編程基礎(chǔ)與應(yīng)用 第2版 題庫試題及答案 - 判斷題、簡答題_第4頁
Python編程基礎(chǔ)與應(yīng)用 第2版 題庫試題及答案 - 判斷題、簡答題_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Pytho(對Python3.xPythn2.x。(Python3.xPthon.xprintPyho2.Pythn3.x(錯WidowsPyhoUnix(錯、不可以在同一臺計算機上安裝多 ython版本。(錯、已x=,那賦值語 x='abcefg'是無法正常執(zhí)行。(錯Pytho(錯)Pytho(對9、在任何時刻相同的值在內(nèi)存中都只保留一份(錯)10、Python不允許使用關(guān)鍵字作為變量名,允許使用內(nèi)置函數(shù)名作為變量名,但這會改變函數(shù)名的含義。(對)Pyhoif(錯Pyhon3.x(對Python(對14、加法運算符可以用來連接字符串并生成新字符串。(對)999*9999Pytho(錯3+4jPythn(012(錯Pythn3.xinut函數(shù)的返回值總是字符串。(對pip命令也支持展名.whl的文件直接安 Pyho展庫。(對、只Pytho擴庫才需要導入以后才能使用其中的對象 Pythn標準不需要導入即可使用其中的所有對象和方法。(錯)Pyho0xad(對3+4jPyho(對Pyho0oa是合法的八進制數(shù)字表示形式。(錯Python(對Python代碼的釋只有一種方式,那就是使 #符號。錯26、放在一對三引號之間的任何內(nèi)容將被認為是注釋。(錯)、盡管可以使 mport語句一次導任意多個標準庫或擴展庫,但是仍建議每次只導入一個標準庫或擴展庫。(對)、為了讓代碼更加湊,編 Pyhon程序時應(yīng)盡量避免加入空格和空行。(錯Pyhon3.5+還可以實現(xiàn)列表、元組的合并和集合的并集運算。(錯)、Pyho中可使 for作為變量。(錯、Pyho中可使 id作為變量,盡管不建議這樣做。(對Python(對5Pythn(對、執(zhí)行語fromathimporsin 之后可以直接使 sin()函數(shù),例sin(3。(對)Pyon(錯、一般來說Pythn擴展庫沒有通用于有版 Pyhon,安裝時應(yīng)選擇與已安裝Pythn的版本對的擴展庫。(對Python變量名分大小寫,所 stdentSudent不是一個變量。(對Pyhon3.xreduce()是內(nèi)置函數(shù)。(錯、如果只需ma模塊中sin(函數(shù),建議使 frommahmortsin來導入,而不要使imortmath導入整個模塊。(對Pyhon3.xiput、安Pyhon擴庫時只能使 pip工具在線安裝,如果安裝不成功就沒有別的法了。(錯)Python作為下標來訪問字典中的值。(對43、列表可以作為字典的“鍵”。(錯)44、元組可以作為字典的“鍵”。(對)45、字典的“鍵”必須是不可變的。(對)、已x為非空列,那么表達 sored(x,reverse=Tre)=lit(rversed(x)) 的值一定是True。(錯)、已x為非空列,那 x.sort(revere=True)x.reverse(的作用是等價的。(錯)48、生成器推導式比列表推導式具有更高的效率,推薦使用。(對)Python(對Python(錯Python不允許重復。(對Python不允許重復。(錯Python(對Python(錯Python可以是列表。(錯Python可以是元組。(對Python(錯Python(對、已B是個集合,并且表達 A<B的值,那么表達A>B的值一定為True。(錯)60、列表對象的append()方法屬于原地操作,用于在列表尾部追加一個元素。(對)、對于列表而言,在尾部追加元素比在中間位置插入元素速度更快一些, 尤其是對于包含大量元素的列表。(對)xx.ppend()x=x+[3]x.inert(03)在執(zhí)行時間上基本沒有太大區(qū)別。(錯)Pyhoninsert()的索引。(對)、假x為列表對,那 x.pop(x.op(1)的作用是一樣的。(對、使el命令或者列表對象 remove()方法刪除列表中元素時會影響列表中部分素的索引。(對)、已知列x=1,2,3,那么執(zhí)行語 x=3之后,變x的地址不變。(錯、使用列表對象remove()方法可以刪除列表中首次出現(xiàn)的指定元素 如果列中不存在要刪除的指定元素則拋出異常。(對)、元組是不可變的不支持列表對象 inset()、remove()等方法,也不支 del命令刪除其中的元素,但可以使 del令刪除整個元組對象。(對Python(對70、無法刪除集合中指定位置的元素,只能刪除特定值的元素。(對)、元組的訪問速度列表要快一些, 果定義了一系列常量值, 并且主要用途僅僅是對其進行遍歷二不需要進行任何修改,建議使用元組而不使用列表。(對)72、當以指定“鍵”為下標給字典對象賦值時,若該“鍵”存在則表示修改該“鍵”對應(yīng),若不存在則表示為字典對象添加一個新 -值。(對、假x是含5個元素的列表,那么切片操 x[10:]是法執(zhí)行的,會拋出異常。(錯)74、只能對列表進行切片操作,不能對元組和字符串進行切片操作。(錯)75、只能通過切片訪問列表中的元素,不能使用切片修改列表中的元素。(錯)76、只能通過切片訪問元組中的元素,不能使用切片修改元組中的元素。(對)Pyon(對Python(錯Python(對80、相同內(nèi)容的字符串使用不同的編碼格式進行編碼得到的結(jié)果并不完全相同。(對)81、刪除列表中重復元素最簡單的方法是將其轉(zhuǎn)換為集合后再重新轉(zhuǎn)換為列表。(對)、已知列中含超5個以上的元素那么語x=x[5]+[5: 的作用是列表x中的元素循環(huán)左移 5位。(錯x=(3foriinrnge(5list(x)(錯)、對于大量列表的接 exend(方法運算+具有更高的效率。(對、表達{1,,2}{1,2,3} 的值True。(錯etend方法屬于原地操作,調(diào)用前后列表對象的地址不變。(對、對于數(shù) 0notn[%fordirage(2,n) 的值Tru則n是素數(shù)。(對)‘’1’、創(chuàng)建只包含一個素的元組時,必須在元素后面加一個逗號,例 (3,。(對)、表達list([1,,3]') 的值[1,2,3]。(錯91、同一個列表對象中的元素類型可以各不相同。(對)92、同一個列表對象中所有元素必須為相同類型。(錯)xx[=3的內(nèi)存地址不變。(對)94、列表可以作為集合的元素。(錯)95、集合可以作為列表的元素。(對)96、元組可以作為集合的元素。(對)97、集合可以作為元組的元素。(對)98、字典可以作為集合的元素。(錯)99、集合可以作為字典的鍵。(錯)100、集合可以作為字典的值。(對)101el刪除集合中的部分元素。(錯102、列表對象的pop()方法默認刪除并返回最后一個元素,如果列表已空則拋出異常。(對)103、表達{12}*2 的值{1,2,,}。(錯)104Pthn(錯105Pthn(錯106Pthn(對107、假e模塊已功導入,并且 ptter=pile('^'+\.'.join([r'\d{1,3}'forinrge(4)])+$'),那么表達 patern.match('9216.1103')的值None。(錯)108、假andom模塊已導入那么表達 radom.sample(ane(10),0)的作是生成20個不重復的數(shù)。(錯)109andomrandom.ample(rage(0)7)的作用是生成7(對)110、使andom模塊的函randint(,100)獲取隨機數(shù)時,有可能會得 100。(對)111=(1,2,34)x[0]=5x(5,2,34)。(錯112、已知x=3,那么執(zhí)行x+=6語句前后x的內(nèi)存地址是不變的。(錯)113in(對114enre、zip(對115、已xy是個等長的整數(shù)列表 那么表達sum((*jfori,jinzip(x,y))) 的作用是計算這兩個列表所表示的向量的內(nèi)積。(對)116、已xy是個等長的整數(shù)列表 那么表達[i+jfor,jinzip(x,y)] 的作時計算這兩個列表所表示的向量的和。(對)117nt('1'*,2)sum(2**iforiirange(4))但是前者更快一些。(對)118=list(rnge(20))dlx[::2(對119=list(rnge(20))x2]=[](錯120=list(rnge(20))print(x[100:00])(錯121、已知x是個列對象,那么執(zhí)行語句 y=x之后,y所做的任何操作都會同樣作用到x上。(對)122、已知x是個列對象,那么執(zhí)行語句 y=x[:]之后,y所做的任何操作會同樣作用到x上。(錯)123Pthn(對)124(i*2forinrane(10))(錯125Pthnx=([1],[2])x[0].pend(3(錯126Pthndict(錯127Pthnset序。(對)128={1:1,2}x[3]=(錯129Pthncollections.OrereDict(對130x=[2,,4]x.fid(5)-1。(錯131、列表對象的排方 sort(只能按元素從小到大排列,不支持別的排序方式(錯)132、已x是一個表那x=x[:]+x:3]可以實現(xiàn)把列 x中的所有元素循環(huán)左移3位。(對133foriirane(20)foriinrange(2040)的作用是等價的。(對)134cntiue(錯135、在編寫多層循環(huán)時,為了提高運行效率,應(yīng)盡量減少內(nèi)循環(huán)中不必要的計算。(對)136elsebreakelse137elseelse(對138“=,會提示語法錯誤。(對139UTF-3(對140、在GBK和CP936編碼中一個漢字需要 2個字節(jié)。(對141Pthn(錯142Pthn%不僅可以用來求余數(shù),還可以用來格式化字符串。(對143Pthnreplace對字符串進行原地修改。(錯144join()算符+具有更高的效率。(對)145rematchsearchmatch對象,匹配失敗則返回空值None(對)146、已x為非空符串,那么表達 ''.join(x.spli())=x 的值一定True。(錯)147、已x為非空符串,那么表達 ','.join(x.split(',')==x 的值一定True。(對)148、當作為條件表式時, []與None價。(對)149、表達式[]==None的值為True。(錯)150、當作為條件表式時, {}與None等價。(對)151、表達{}=None 的值True。(錯152、表達pow(,2)==3**2 的值Tue。(對153、當作為條件表達式時,空值、空字符串、空列表、空元組、空字典、空集合、空迭代對象以及任意形式的數(shù) 0都等價alse。(對154、正則表達式對 match()方法以在字符串的指定位置開始進行指定模式的配。(對)155、使用正則表達對字符串進行分割時, 可以指定多個分符,而字符串對象的split方法無法做到這一點。(對156、正則表達式元字符“^”一般用來表示從字符串開始處進行匹配,用在一對方括號中的時候則表示反向匹配,不匹配方括號中的字符。(對)157“用來匹配任意空白字符。(對158“\d用來匹配任意數(shù)字字符。(對159、已xy是個字符串,那么表達 sum((fori,jinzi(x,y)ifi==j)) 可以用來計算兩個字符串中對應(yīng)位置字符相等的個數(shù)。(對)160Pthn.xndeutf8(對161='hellwworld.'.encde()x.ecoe('bk''hellwworld.'(對162、已='Pyton是一種非常好的編程語 ,那么表達x.decde('gbk'的值Pythn是一種非常好的編程語 '。(錯163'^http''http'開頭的字符串。(對164、正則表達'\d{8}|\d{15}$ 只能檢給定字符串是否 18位5位數(shù)字字符,并不能保證一定是合法的身份證號。(對)165[^abc]''a'、'b'、'c'(對166'python|perl'或'p(yhonerl)'pythn或'perl'。(對167b'ellworld'b'heloworl.'MD(錯168、調(diào)用函數(shù)時,實參前面加一個型號 *表示序列解包(對)169、Pthn.x語print(*[1,,3]) 不能正確執(zhí)行。(錯170、函數(shù)是代碼復用的一種方式。(對)171、定義函數(shù)時,使該函數(shù)不需要接收任何參數(shù), 也必須保留一對空的圓括號來表示這是一個函數(shù)。(對)172、編寫函數(shù)時,一般建議先對參數(shù)進行合法性檢查, 然后編寫正常的功能代碼。(對)173、一個函數(shù)如果帶有默認值參數(shù),那么必須所有參數(shù)都設(shè)置默認值。(錯)174Python(錯175、定Python數(shù)時,如果函數(shù)中沒 retur語句,則認返回空 None。(對)176、如果在函數(shù)中語 return3,么該函數(shù)一定會返回整 。(錯177return語句。(錯178retur語句一定能夠得到執(zhí)行。(錯179、不同作用域中的同名變量之間互相不影響,也就是說,在不同的作用域內(nèi)可以定義同名的變量。(對)180、全局變量會增加不同函數(shù)之間的隱式耦合度,從而降低代碼可讀性,因此應(yīng)盡量避免過多使用全局變量。(對)181、函數(shù)內(nèi)部定義的局部變量當函數(shù)調(diào)用結(jié)束后被自動刪除。(對)182、在函數(shù)內(nèi)部可以使global來聲明使用外部全局變量 也可以使glbal直接定義全局變量。(對)183、在函數(shù)內(nèi)部沒有辦法定義全局變量。(錯)184、在函數(shù)內(nèi)部直接修改形參的值并不影響外部實參的值。(對)185、在函數(shù)內(nèi)部沒有任何方法可以影響實參的值。(錯)186、調(diào)用帶有默認值參數(shù)的函數(shù)時,不能為默認值參數(shù)傳遞任何值,必須使用函數(shù)定義時設(shè)置的默認值。(錯)187、在同一個作用域內(nèi),局部變量會隱藏同名的全局變量。(對)188、形參可以看做是函數(shù)內(nèi)部的局部變量,函數(shù)運行結(jié)束之后形參就不可訪問了。(對)189、假設(shè)已導入rnom標準庫,那么表達式max([random.rndit(1, 0)foriiange(10)])的值一定10。(錯190Pthnranomrndit(m,n)[m,n區(qū)間上的隨機整數(shù)。(對)191、在函數(shù)內(nèi)部沒任何聲明的情況下直接為某個變量賦值, 這個變量一定是函數(shù)內(nèi)部的局部變量。(對)192Pthn(對193Pthn(對194、在函數(shù)中沒有任何辦法可以通過形參來影響實參的值。(錯)195、已x=3,么執(zhí)行語句 x+=6之后,x的內(nèi)存地址不變。(錯)196、在定義函數(shù)時某個參數(shù)名字前面帶有一個 *符號表示變長度參數(shù),可以接收任意多個普通實參并存放于一個元組之中。(對)197、在定義函數(shù)時某個參數(shù)名字前面帶有兩個 *符號表示變長度參數(shù),可以接收任意多個關(guān)鍵參數(shù)并將其存放于一個字典之中。(對)198、定義函數(shù)時,有默認值的參數(shù)必須出現(xiàn)在參數(shù)列表的最右端, 任何一個帶有默認值的參數(shù)右邊不允許出現(xiàn)沒有默認值的參數(shù)。(對)199、在調(diào)用函數(shù)時可以通過關(guān)鍵參數(shù)的形式進行傳值, 從避免必須記住函數(shù)形參順序的麻煩。(對)200、在調(diào)用函數(shù)時,必須牢記函數(shù)形參順序才能正確傳值。(錯)201、調(diào)用函數(shù)時傳遞的實參個數(shù)必須與函數(shù)形參個數(shù)相等才行。(錯)202、在編寫函數(shù)時,建議首先對形參進行類型檢查和數(shù)值范圍檢查之后再編寫功能代碼,或者使用異常處理結(jié)構(gòu),盡量避免代碼拋出異常而導致程序崩潰。(對)203lamda(對204g=lambax3(錯205yeld(對206yielretur(錯207、語句pass僅起到占位符的作用,并不會做任何操作。(對)208lamba表達式定義有名字的函數(shù)。(錯209、Pthn中義類時如果某個成員名稱前 2個下劃線則表示是私有成員(對)210、在類定義的外部沒有任何辦法可以訪問對象的私有成員。(錯)211Pthn(對212、棧和隊列的都具有先入后出的特點。(錯)213、在一個軟件的計與開發(fā)中, 所有類名、函數(shù)名、變量名都應(yīng)該遵循統(tǒng)一的風格和規(guī)范。(對)214、定義類時所有例方法的第一個參數(shù)用來表示對象本身, 在類的外部通過對象名來調(diào)用實例方法時不需要為該參數(shù)傳值。(對)215、在面向?qū)ο蟪绦蛟O(shè)計中,函數(shù)和方法是完全一樣的,都必須為所有參數(shù)進行傳值。(錯)216Pthn(對217、Python中義類時,運算符重載是通過重寫特殊方法實現(xiàn)的。例如,在類中實現(xiàn)mul()方法即可支持該類對象 **運算符。(錯218、IDL交互式下,一個下劃“ _表示解釋器中最后一次顯示的內(nèi)容或最后一次語句正確執(zhí)行的輸出結(jié)果。(對)219、對于Python類中的私有成員,可以通過“對象名._類名__私有成員名”的方式來訪問。(對)220、運算符“-”可以用于集合的差集運算。(對)221、如果定義類時有編寫析構(gòu)函數(shù) Pythn將提供一個認的析構(gòu)函數(shù)進行必要的資源清理工作。(對)222e10randomdom.hoice(sq)friinrane(10)]radom.sample(sq,0)等價。(錯223、在派生類中可通過“基類名 方法名()”的方式來調(diào)用基類中的方法。(對)224PthnPythn(對225、Pthn中義類時實例方法的第一個參數(shù)名稱必須 self。(錯226Python(對)227、定義類時如果現(xiàn)contains(方法,該類對象即可支持成員測試運 in。(對)228、定義類時如果現(xiàn)len__(方法,該類對象即可支持內(nèi)置函 len(。(對)229、定義類時實現(xiàn)__eq__()方法,該對象即可支持運算符 ==。(對)230、定義類時實現(xiàn)pow()方法,該類對象即可支持運算符 **。(對231Pthninit()(對232、定義類時,在個方法前面使 classmethod進行修飾,則該方法屬于類方法。(對)233@saticmthd則該方法屬于靜態(tài)方法。(對)234、通過對象不能調(diào)用類方法和靜態(tài)方法。(錯)235Pthn(對236Pthn(錯237、屬性可以像數(shù)據(jù)成員一樣進行訪問,但賦值時具有方法的優(yōu)點,可以對新值進行檢查。(對)238、只可以動態(tài)為對象增加數(shù)據(jù)成員,而不能為對象動態(tài)增加成員方法。(錯)239all方法的類的對象都是可調(diào)用的。(對240Pthn(對241、函數(shù)和對象方法是一樣的,內(nèi)部實現(xiàn)和外部調(diào)用都沒有任何區(qū)別。(錯)242、在設(shè)計派生類時,基類的私有成員默認是不會繼承的。(對)243、如果在設(shè)計一類時實現(xiàn) len_(方法,那么該類的對象會自動支Pythn內(nèi)置函數(shù)ln。(對244osremove()(錯245open()”w246、使用內(nèi)置函數(shù)open()打開文件時,只要文件路徑正確就總是可以正確打開的。(錯)247print()函數(shù)無法將信息寫入文件。(錯248、對文件進行讀寫操作之后必須顯式關(guān)閉文件以確保所有內(nèi)容都得到保存。(對)249Pthnsstartfile()調(diào)用關(guān)聯(lián)的程序。(對)250Pthnsstartfile()聯(lián)相應(yīng)的程序來打開或執(zhí)行指定的文件。(對)251、設(shè) os模塊已入那么列表推導 [fileame for fiename inos.listdir(C:\\Wndows') iffienameendswith('.exe']C:\Windows.exe(對252、二進制文件不能使用記事本程序打開。(錯)253、使用普通文本編輯器軟件也可以正常查看二進制文件的內(nèi)容。(錯)254、二進制文件也可以使用記事本或其他文本編輯器打開,但是一般來說無法正常查看其中的內(nèi)容。(對)255Pthnsisfile()(對256Pthnsexists()可以用來測試給定路徑的文件是否存在。(對257Pthnsisdir((對258Pthnslistdir(表。(對)259PthnlwtExcel23Exel(對)260PthnlrExcel203Excel(對)261oseame方法可以實現(xiàn)文件移動操作。(對262oslistdir(263tell方法用來返回文件指針的當前位置。(對264、以寫模式打開的文件無法進讀操作。(對)265、假設(shè)已成功導ossys標準庫,么表達 ospah.diname(sys.executble的值Pytho安裝錄。(對266、以讀模式打開件時,文件指針指向文件開始處。(對)267、以追加模式打開文件時,文件指針指向文件尾。(對)268、二進制文件也可以使用記事本程序打開,只是無法正確閱讀和理解其中的內(nèi)容。(對)269、文本文件是可迭代的可以使orlineifp類似的句遍歷文件對 fp中的每一行。(對)270Pthnpythn.exe(對271、對字符串信息進行編碼以后,必須使用同樣的或者兼容的編碼格式進行解碼才能還原本來的信息。(對)272picklestruct(錯)273、已知當前文件中有一個文 reame.txt具有只讀屬,假設(shè)標準 os已正確導入,那么可以通過語 os.chmod('eadmetxt',0o77)刪除該文件的只讀屬性。(對)274Pthnsremove()(對275、在try...exep...elsetryelse276、異常處理結(jié)構(gòu) finally塊中代仍然有可能出錯從而再次引發(fā)異常。(對277、程序中異常處理結(jié)構(gòu)在大多數(shù)情況下是沒必要的。(錯)278elseelse(對279、異常處理結(jié)構(gòu)也不是萬能的,處理異常的代碼也有引發(fā)異常的可能。(對)280finally(對)281、由于異常處理構(gòu)try...excpt..fially..finally里的語句總是被執(zhí)行的 所以把關(guān)閉文件的代碼放到finally塊里肯定是萬無一失,一定能保證文件被正確關(guān)閉并且不會引發(fā)任何異常。(錯)282、GUI 設(shè)計中,復選框往往用來實現(xiàn)非互斥多選的功能,多個復選框之間的選擇互不影響。(對)283、GUI 設(shè)計中,單選按鈕用來實現(xiàn)用戶在多個選項中的互斥選擇,在同一組內(nèi)個選項中只能選擇一個,當選擇發(fā)生變化之后,之前選中的選項自動失效。(對)284Pthn代碼可內(nèi)嵌 asp文件中(對285ISPython(錯286、使用TCP協(xié)議進行通信時,必須首先建立連接,然后進行數(shù)據(jù)傳輸,最后再關(guān)閉連接。(對)287、TCP288、可以使p2eepyinstaller等展庫Pythn源程序打包成 exe文,從而脫Pythn環(huán)Widows平臺上運行。(對289Pthn程序只在安裝 Pythn境的計算機上以源代碼形式運行。(錯290thradig.Tread(錯291PthnhreadigLockRLockCoditionEven、Semaphore對象都可以用來實現(xiàn)線程同步。(對)292、在編寫應(yīng)用程序時,應(yīng)合理控制線程數(shù)量,線程并不是越多越好。(對)293daeonFalse(對)2944CPU400%的處理速度提升。(錯)295、多線程編程技術(shù)主要目的是為了提高計算機硬件的利用率,沒有別的作用了。(錯)296Pthn只能使內(nèi)置數(shù)據(jù) SQLiMSSQLerverACCESSOracleMySQL(錯297pnGglBegin()定mod來決定。如mod值LTRIANGLES 時表將要繪制三角形。(對)298、OpenGL采用的“狀態(tài)機”工作方式,一旦設(shè)置了某種狀態(tài)以后,除非顯式修改該狀態(tài),否則該狀態(tài)將一直保持。(對)三、簡答題PythonPythnPythoPythnPython自動將其刪除。Pytho&(1)數(shù)字位運算;2)集合交集運算。)Pythn(1)import模塊名as]2)from模塊名imort對象名as3)frommathiport*、解Pytho腳程序“name__變量及其作用?(每 Python腳本在行時都有一“name__屬性。如果腳本作為模塊被導入,則“ name__屬性的值被自動設(shè)置為模塊名如果腳本獨立運行“__main__。利“name__屬性即可控Pythn序的運行方式。5、為什么應(yīng)盡量從列表的尾部進行元素的增加與刪除操作?(當列表增加或刪除元素時,列表對象自動進行內(nèi)存擴展或收縮,從而保證元素之間沒有縫隙,但這涉及到列表元素的移動,效率較低,應(yīng)盡量從列表尾部進行元素的增加與刪除操作以提高處理速度。)“or的短路求值特性?(1or表達式1的值等價于True2True。因此,不需要再計算表達式2的值。)Python(將其賦值給多個不同的對象時,內(nèi)存中只有一個副本,多個對象共享改副本。)、異常和錯誤有什么區(qū)別? (異常是指為程序執(zhí)行過程中出錯而在正常控制流以外采取的行為。嚴格來說,語法錯誤和邏輯錯誤不屬于異常,但有些語法錯誤往往會導致異常,例如由于大小寫拼寫錯誤而訪問不存在的對象,或者試圖訪問不存在的文件,等等。)pdbPythn1)在交互模式下使用pdb模塊提供的功能可以直接調(diào)試語句塊、表達式、函數(shù)等多種腳本。2)在程序中嵌入斷點來實現(xiàn)調(diào)試功能。在程序中首先導入pdb模塊,然后使用pdb.et_tre在需要的位置設(shè)置斷點。如果程序中存在通過該方法調(diào)用顯式插入的斷點,pdb3)使用命令行調(diào)試程序。在命令行提示符下執(zhí)行“python–mpdb腳本文件名”,則直接進入調(diào)試環(huán)境;當調(diào)試結(jié)束或程序正常結(jié)束以后,pdb將重啟該程序。)“D:\tst.txt的問題。代碼1:>>>try:fp=open(rd:\est.tt')print('Helloworl!',fil=p)finallyfp.clse(代碼2:>>>try:fp=open(rd:\est.tt',a+')print('Helloworl!',fil=p)finallyfp.clse(答:“D\tes.txtfopenhmlhtm簡要說明可能存在的問題。importosfile_list=os.listdir("")forfilenaminfil_listpos=fileame.riex("")iffilenampos+]="html:newnam=filnam[:pos+]+"htm"os.renam(filenamnewname)print(filenam+""newname)答:對于字符串對象,如果要查找的子字符串不存在, ridex()方法會拋出異常。所以,如果當前文件夾中有不包含圓點的文件名或者子文件夾名,上面的代碼會拋出異常而崩潰。四、編程題Dtest.txthelloworl答:fp=open(rD:\tes.txt,a)print(helloworld,fil=fp)fp.clse(2、寫出下面代碼的優(yōu)化版本,提高運行效率。x=list(range(500))foriteminxt=5**5print(item+t)答:x=list(rnge(50))t=5**5foriteminxprint(item+)20列,奇數(shù)下標的元素不變。(提示:使用切片。)答:imortrandomx=[random.rndit(0,100)oriinrage(0)print(x)y=x[::2y.sort(rverse=Tue)x[::2]=print(x)4、寫出下面代碼的執(zhí)行結(jié)果。defJoin(List,sep=None):return(seor',').join(Lst)print(Join(['a',b','c']))print(Join(['a',b','c'],':')答:a,b,ca:b:5、寫出下面代碼的運行結(jié)果。defSum(a,b=3,c=5):returnsum(,bc])print(Sum(a=8,c=2))print(Sum(8))print(Sum(8,2)答:1316156、寫出下面代碼的運行結(jié)果。defSum(*p):returnsum(print(Sum(3,,8)print(Sum(8))print(Sum(8,,0))答:16820YESNO答:imortmathdefIPrime(v)n=int(math.qrt(v)1)foriinrage(n)ifv%i==:return'Noelse:return'es'Pyhonsorted。答:defortd(v)t=v[::]r=[]whilet:tt=mi(t)r.appnd(tt)t.remove(ttreturn、編寫程序,生成包含201010序排列,并輸出結(jié)果。答:imortrandomx=[random.rndit(0,100)oriinrage(0)print(x)y=x[0:0y.sort()x[0:0]=y=x[1020y.sort(rverse=Tue)x[1020]=print(x)10、編寫程序,運行后用戶輸入4位整數(shù)作為年份,判斷其是否為閏年。如果年份能被400整除,則為閏年;如果年份能被4整除但不能被100整除也為閏年。答:x=input('laseiputaniegerof4digitmeanigteyar:')x=eval(x)ifx%400==or(x%4==anntx%00==0):print('Yes')else:print('No')11、編寫程序,實現(xiàn)分段函數(shù)計算,如下表所示。答:x=input('laseiputx:')x=eval(x)ifx<0orx>=0:print(0)elif0<=<5:print(x)elif5<=<10:print(3*x-)elif10<x<20:print(0.5*x-212、閱讀下面的程序,判斷其是否可以正常運行,如果可以運行則寫出執(zhí)行結(jié)果,如果不能運行則寫出理由。classTest:definit(sel,vale):self.__valu=valu@proertdefalue(elf)returnsel.valut=Test(t.valu=print(t.value)答:不能運行。程序中定義的是只讀屬性,不能修改屬性的值。51,0然后統(tǒng)計每個整數(shù)出現(xiàn)頻率。請把缺少的代碼補全。imortrandomx=[random. (1,20)oriinrage( )]r=dict()foriinxr[i]=r.get(, )1fork,vir.items(:print(k,v)答:randint50、Pythondemo.pydefmain()ifnam=='main':print(1)else:main()

print(2)將該程序文件直接運行時輸出結(jié)果為 ,作為模塊導入時得到結(jié)果 -。(1、2)、下面程序的執(zhí)行果是 。(s=0foriinrage(101):s+=ielse:print(1)16、下面程序的執(zhí)行結(jié)果是s=0foriinrage(101):s+=iifi==50print(s)break

__________。(1275)else:print(1)17、下面的程序是否能夠正常執(zhí)行,若不能,請解釋原因;若能,請分析其執(zhí)行結(jié)果。fromrandomimportrandintresult=set(whileTrue:result.ad(rndnt(1,))iflen(rsult)=20breakprint(result)答:無法正確執(zhí)行,為該程序的功能是 [1,10]區(qū)間中選20個不同的隨機整而該區(qū)間并沒有這么多整數(shù),所以程序死循環(huán)。、下面的代碼是否夠正確運行,若不能請解釋原因;若能,請分析其執(zhí)行結(jié)果。>>x=lit(range(20)>>foriinrange(ln():delx[i答:無法正確執(zhí)行,因為刪除列表元素時會影響其他元素在列表中的索引, 上面的代碼會拋出下標越界的異常。19、閱讀下面的代碼,解釋其功能。>>x=lit(range(20)>>forindex,valeinenumerte(x)ifvalue==3:x[index=答:將列表x中值為3的元素修改為5。20、閱讀下面的代碼,解釋其功能。>>x=[range(3*i,3*+)foriinrage(2)>>x=lit(map(lst,x)>>x=lit(map(lst,zip(*x))答:首先生成一個包含列表的列表,然后模擬矩陣轉(zhuǎn)置。21、閱讀下面的代碼,解釋其功能。>>importstri>>x=string.asci_letters+string.diit>>importrandom>>print(''.join(random.sample(x,10))答:輸出由英文字母大小寫或數(shù)字組成的長度為 10且不重的隨機字符串。22、閱讀下面的代碼,分析其執(zhí)行結(jié)果。defdemo(*p):returnsum(print(dem(12,34,5)print(dem(12,3答:輸出結(jié)果為15623、閱讀下面的代碼,分析其執(zhí)行結(jié)果。defdemo(a,b,c=3,d=100):returnsum(a,,c,d)print(dem(1,2,3,4)print(dem(1,2,d=3))答:輸出結(jié)果為10924、下面的代碼輸出結(jié)果為defdemo():x=5

___________。(3)x=3demo()print(x)、下面函數(shù)的功能_。(將序列循環(huán)左移 k位,得到新序列并返回)defdemo(lt,k)ifk<len(lst):returnlst[k]+lt[:k26、編寫函數(shù),求任意整數(shù)的二進制形式中最后連續(xù)0的個數(shù)。defdemo(n):b_n=bin(nindex=b_n.rfind('1')+1returnln(b_n[idex])、有n個乒乓球動員打淘汰賽, 編函數(shù)計算至少需要多少場比賽才能決出冠軍,不允許直接使用n-1defdemo(n)ifn=1:returnifn=2:returnm,c=divmd(n,2)returnm+dem(c+m)28、使用循環(huán)和列表推導式兩種方法求解百錢買百雞問題。假設(shè)大雞5元一只,中雞3元一只,小雞1元三只,現(xiàn)有100元錢想買100只雞,有多少種買法?(1)循環(huán)>>forxinrange(1)foryinrnge(4)z=100-x-yifz%3==and5*x+3y+z//3=100:print(x,y,z)02575418788118112484(2)列表推導式>> [(x, y,100-x-) for x i rane(21)or y in rnge(4)if 100--y)%3== an5*x+3*y+100-x-)//3==00[(0,2,5),(4,18,78)(8,1,1),(124,84)29、編寫函數(shù),給定任意字符串,找出其中只出現(xiàn)一次的字符,如果有多個這樣的字符,就全部找出。defearchne()#創(chuàng)建空字典d=dict()#遍歷字符

溫馨提示

  • 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論