Python程序設(shè)計(jì) 習(xí)題及答案 林世偉_第1頁(yè)
Python程序設(shè)計(jì) 習(xí)題及答案 林世偉_第2頁(yè)
Python程序設(shè)計(jì) 習(xí)題及答案 林世偉_第3頁(yè)
Python程序設(shè)計(jì) 習(xí)題及答案 林世偉_第4頁(yè)
Python程序設(shè)計(jì) 習(xí)題及答案 林世偉_第5頁(yè)
已閱讀5頁(yè),還剩18頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

單元1程序開發(fā)環(huán)境構(gòu)建與數(shù)據(jù)輸入輸出單元1程序開發(fā)環(huán)境構(gòu)建與數(shù)據(jù)輸入輸出1.選擇題(1)Python是一個(gè)優(yōu)秀并廣泛使用的語(yǔ)言,得到行內(nèi)眾多領(lǐng)域的認(rèn)可,下列屬于Python主要應(yīng)用領(lǐng)域的是:(ABCD)。A.人工智能B.科學(xué)計(jì)算和統(tǒng)計(jì)C.大數(shù)據(jù)處理D.游戲開發(fā)(2)Python相比其他程序設(shè)計(jì)語(yǔ)言具有的特點(diǎn),正確的是(ABC)。A.交互式B.解釋型C.面向?qū)ο驞.服務(wù)端語(yǔ)言(3)計(jì)算機(jī)中信息處理和信息儲(chǔ)存用(A)。A.二進(jìn)制代碼B.十進(jìn)制代碼C.十六進(jìn)制代碼D.ASCII代碼(4)Python源程序執(zhí)行的方式(B)A.編譯執(zhí)行B.解析執(zhí)行C.直接執(zhí)行D.邊編譯邊執(zhí)行(5)Python語(yǔ)言語(yǔ)句塊的標(biāo)記是(C)A.分號(hào)B.逗號(hào)C.縮進(jìn)D./(6)安裝好Python之后,可以有多種方式運(yùn)行,下列不屬于其可行運(yùn)行方式的是(A)。A.瀏覽器中運(yùn)行B.交互式解釋器C.命令行腳本D.Pycharm(7)Python解釋器執(zhí)行'{0},{2},{1}'.format('a','b','c')的結(jié)果為(C)。A.'a,b,c'B.'a,c,c'C.'a,c,b'D.'c,c,b'(8)Python解釋器在主提示符或從屬提示符后輸入中斷符(A)就會(huì)取消當(dāng)前輸入,回到主提示符,會(huì)拋出一個(gè)KeyboardInterrupt異常。A.Control-CB.Ctrl-ZC.Ctrl-OD.Alt-C(9)作為學(xué)習(xí)Python的開始,需要事先搞清楚,什么是編程語(yǔ)言?下列選項(xiàng)正確的是(ABCD).A.編程語(yǔ)言是程序員與計(jì)算機(jī)溝通的介質(zhì)B.能夠被計(jì)算機(jī)識(shí)別的表達(dá)方式即是編程語(yǔ)言C.編程即程序員根據(jù)需求把自己的思想流程按照某種編程語(yǔ)言的語(yǔ)法風(fēng)格編寫下來D.人類編程控制計(jì)算機(jī)工作(10)在Python3中執(zhí)行如下語(yǔ)句后得到的結(jié)果是?(D)>>>word="Python">>>print"hello"+wordA.helloPythonB."hello"PythonC.hellowordD.語(yǔ)法錯(cuò)誤2.填空題(1)編程語(yǔ)言通常有固定的擴(kuò)展名,Python文件的擴(kuò)展名通常為{.py}。(2)Python安裝擴(kuò)展庫(kù)常用的是{pip}工具。(3)使用pip工具查看當(dāng)前已安裝的Python擴(kuò)展庫(kù)的完整命令是{piplist}。(4)在IDLE交互模式中瀏覽上一條語(yǔ)句的快捷鍵是{Alt+P}。(5)在Python中,使用內(nèi)置函數(shù){print()}可以將結(jié)果輸出到IDLE或者標(biāo)準(zhǔn)控制臺(tái)中。(6)Python的編程方式主要有{交互式}編程、腳本式編程兩種。(7)Python編程時(shí)關(guān)鍵字都不能作為變量名,在程序中先導(dǎo)入keyword模塊,然后調(diào)用{keyword.kwlist}即可查看Python包含的所有關(guān)鍵字。(8)在【PythonShell】IDLE窗口出現(xiàn){>>>}Python提示符時(shí),表示Python已經(jīng)準(zhǔn)備好了,等待用戶輸入Python程序代碼。(9)Python提供了{(lán)input()}內(nèi)置函數(shù)從標(biāo)準(zhǔn)輸入中讀入一行文本,默認(rèn)的標(biāo)準(zhǔn)輸入是鍵盤。(10)Python3語(yǔ)句print(1,2,3,sep=',')的輸出結(jié)果為{1,2,3}。3.判斷題(1)Python是一種跨平臺(tái)、開源、免費(fèi)的高級(jí)動(dòng)態(tài)編程語(yǔ)言。(正確)(2)Python3.x完全兼容Python2.x。(錯(cuò)誤)(3)在Windows平臺(tái)上編寫的Python程序無(wú)法在Unix平臺(tái)運(yùn)行。(錯(cuò)誤)(4)不可以在同一臺(tái)計(jì)算機(jī)上安裝多個(gè)Python版本。(錯(cuò)誤)(5)pip命令也支持?jǐn)U展名為“.whl”的文件直接安裝Python擴(kuò)展庫(kù)。(正確)(6)Python使用縮進(jìn)來體現(xiàn)代碼之間的邏輯關(guān)系。(正確)(7)Python代碼的注釋只有一種方式,那就是使用#符號(hào)。(錯(cuò)誤)(8)為了讓代碼更加緊湊,編寫Python程序時(shí)應(yīng)盡量避免加入空格和空行。(錯(cuò)誤)(9)Python程序只能在安裝了Python環(huán)境的計(jì)算機(jī)上以源代碼形式運(yùn)行。(錯(cuò)誤)(10)在Python3.x中,使用內(nèi)置函數(shù)input()接收用戶輸入時(shí),不論用戶輸入的什么格式,一律按字符串進(jìn)行返回。(正確)(11)安裝Python擴(kuò)展庫(kù)時(shí)只能使用pip工具在線安裝,如果安裝不成功就沒有別的辦法了。(錯(cuò)誤)單元2基本數(shù)據(jù)類型與運(yùn)算符應(yīng)用單元2基本數(shù)據(jù)類型與運(yùn)算符應(yīng)用1.選擇題(1)在信息組織和存儲(chǔ)中,最基本的單位是(B)。A.字節(jié)(Byte)B.二進(jìn)制位(bit)C.字(Word)D.雙字(DoubleWord)(2)現(xiàn)有代碼t=('a'),在Python3解釋器中查看type(t)的到的結(jié)果為(A)。A.<class'str'>B.<class'tuple'>C.(class'str')D.(class'tuple')(3)設(shè)任意一個(gè)十進(jìn)制整數(shù)D,轉(zhuǎn)換成二進(jìn)制數(shù)為B,根據(jù)數(shù)制的概念,下列敘述中正確的是(C)。A.?dāng)?shù)字B的位數(shù)<數(shù)字D的位數(shù)B.?dāng)?shù)字B的位數(shù)≤數(shù)字D的位數(shù)C.?dāng)?shù)字B的位數(shù)≥數(shù)字D的位數(shù)D.?dāng)?shù)字B的位數(shù)>數(shù)字D的位數(shù)(4)字長(zhǎng)為7位的無(wú)符號(hào)二進(jìn)制整數(shù)能表示的十進(jìn)制整數(shù)范圍是(C)。A.0~128B.0~255C.0~127D.1~127(5)下列選項(xiàng)中,八進(jìn)制數(shù)24轉(zhuǎn)換成二進(jìn)制數(shù)正確的是(B)。A.00101100B.00010100C.00011100D.00011101(6)將二進(jìn)制數(shù)10010101,轉(zhuǎn)換成十進(jìn)制數(shù),正確的選項(xiàng)為(C)。A.139B.141C.149D.151(7)下列字符中對(duì)應(yīng)ASCII碼數(shù)值最小的是哪個(gè)選項(xiàng)(A)。A.BB.a(chǎn)C.kD.M(8)在Python中,數(shù)值類型共包括以下哪幾種類型(ABCD)。A.intB.floatC.complexD.bool(9)以下選項(xiàng)為整數(shù)類型的有(ACD)。A.3B.3.1C.-3D.0(10)Python3解釋器執(zhí)行l(wèi)ong(10)的結(jié)果為(C)。A.10LB.10lC.NameError:name'long'isnotdefinedD.1(11)在Python3中,如果變量x=3,那么,x/=3的結(jié)果為(C)。A.3B.0C.1.0D.1(12)下列選項(xiàng)中,數(shù)值最小的是(D)。A.十進(jìn)制數(shù)55B.二進(jìn)制數(shù)110100C.八進(jìn)制數(shù)101D.十六進(jìn)制數(shù)33(13)Python3解釋器在執(zhí)行2的8次方的結(jié)果為(A)。A.256B.256LC.256lD.報(bào)錯(cuò)(14)下面哪個(gè)不是Python合法的標(biāo)識(shí)符(B)。A.int32B.40XLC.selfD.()name()(15)Python不支持的數(shù)據(jù)類型是(A)。A.charB.intC.floatD.list(16)print(type(1+2*3.14))結(jié)果是(C)。A.<class'int'>B.<class'long'>C.<class'float'>D.<class'str'>(17)以下不是Python中的關(guān)鍵字(D)A.raiseB.withC.importD.final(18)下列哪個(gè)語(yǔ)句在Python中是非法的?(B)A.x=y=z=1B.x=(y=z+1)C.x,y=y,xD.x+=y(19)關(guān)于Python內(nèi)存管理,下列說法錯(cuò)誤的是(B)。A.變量不必事先聲明B.變量無(wú)須先創(chuàng)建和賦值而直接使用C.變量無(wú)須指定類型D.可以使用del釋放資源(20)print(100-25*3%4)應(yīng)該輸出什么?(B)A.1B.97C.25D.02.填空題(1)在Python中{None}表示空類型。(2表達(dá)式'abc'in'abdcefg'的值為{False}。(3)表達(dá)式int(str(34))==34的值為{True}。(4)Python運(yùn)算符中用來計(jì)算整商的是{//}。(5)已知x=3,那么執(zhí)行語(yǔ)句x+=6之后,x的值為{9}。(6)已知x=3,那么執(zhí)行語(yǔ)句x*=6之后,x的值為{18}。(7)表達(dá)式int(4**0.5)的值為{2}。(8)已知x=3和y=5,執(zhí)行語(yǔ)句x,y=y,x后x的值是{5}。(9)表達(dá)式3**2的值為{}。{9}(10)表達(dá)式3*2的值為。{6}(11表達(dá)式isinstance('abc',str)的值為{True}。(12)表達(dá)式type(3)in(int,float,complex)的值為{True}。(13)表達(dá)式print(0b10101)的值為{21}。(14)表達(dá)式1234%1000//100的值為{2}。(15)表達(dá)式16**0.5的值為{4.0}。3.判斷題(1)已知x=3,那么賦值語(yǔ)句x='abcedfg'是無(wú)法正常執(zhí)行的。(錯(cuò)誤)(2)Python變量使用前必須先聲明,并且一旦聲明就不能在當(dāng)前作用域內(nèi)改變其類型。(錯(cuò)誤)(3)Python采用的是基于值的自動(dòng)內(nèi)存管理方式。(正確)(4)在任何時(shí)刻相同的值在內(nèi)存中都只保留一份(錯(cuò)誤)(5)Python不允許使用關(guān)鍵字作為變量名,允許使用內(nèi)置函數(shù)名作為變量名,但這會(huì)改變函數(shù)名的含義。(正確)(6)在Python中可以使用if作為變量名。(錯(cuò)誤)(7)在Python3.x中可以使用中文作為變量名。(正確)(8)Python變量名必須以字母或下劃線開頭,并且區(qū)分字母大小寫。(正確)(9)在Python中,變量不直接存儲(chǔ)值,而是存儲(chǔ)值的引用,也就是值在內(nèi)存中的地址。(正確)(10)在條件表達(dá)式中不允許使用賦值運(yùn)算符“=”,會(huì)提示語(yǔ)法錯(cuò)誤。(正確)(11)0o12f是合法的八進(jìn)制數(shù)字。(錯(cuò)誤)(12)在Python中0xad是合法的十六進(jìn)制數(shù)字表示形式。(正確)(13)Python關(guān)鍵字不可以作為變量名。(正確)(14)Python變量名區(qū)分大小寫,所以student和Student不是同一個(gè)變量。(正確)(15)Python運(yùn)算符%不僅可以用來求余數(shù),還可以用來格式化字符串。(正確)(16)已知x=3,那么執(zhí)行語(yǔ)句x+=6之后,x的內(nèi)存地址不變。(錯(cuò)誤)(17)一個(gè)數(shù)字5也是合法的Python表達(dá)式。(正確)(18)在Python中可以使用id作為變量名,盡管不建議這樣做。(正確)單元3邏輯運(yùn)算與流程控制單元3邏輯運(yùn)算與流程控制1.選擇題(1)當(dāng)知道條件為真,想要程序無(wú)限執(zhí)行直到人為停止的話,可以需要下列哪個(gè)選項(xiàng)(C)。A.forB.breakC.whileD.if(2)下列表達(dá)式的值為True的是(C)A.5+4j>2-3jB.3>2>2C.1==1and2!=1D.not(1==1and0!=1)(3)求比10小且大于或等于0的偶數(shù)的代碼如下,請(qǐng)?zhí)羁諏⒋a補(bǔ)充完善:x=10whilex:x=x-1ifx%2!=0:(B)print(x)A.breakB.continueC.yieldD.flag(4)Python3解釋器執(zhí)行not1and1的結(jié)果為(B)。A.TrueB.FalseC.0D.1(5)有下面的程序段ifk<=10andk>0:ifk>5:ifk>8:x=0else:x=1else:ifk>2:x=3else:x=4其中k取那組值時(shí)x=3。(A)A.345B.12C.567D.56(6)下面程序的執(zhí)行結(jié)果是(B)。s=0foriinrange(1,11):s+=iifi==10:print(s)breakA.66B.55C.45D.0(7)下面程序的執(zhí)行結(jié)果是(A)。s=0foriinrange(2,11):s+=iprint(s)else:print(1)A.1B.2C.5D.9(8)假設(shè)n為5,那么表達(dá)式n&1==n%2的值為(B)。A.FalseB.TrueC.5D.1(9)執(zhí)行以下代碼,其結(jié)果為(A)。x=5y=8print(x==y)A.FalseB.TrueC.5D.8(10)執(zhí)行以下代碼,其結(jié)果為(C)。n=10sum=0number=1whilenumber<=n:sum=sum+numbernumber+=1print(sum)A.0B.45C.55D.662.填空題(1)表達(dá)式'\x41'=='A'的值為{True}。(2)表達(dá)式not3的值為{False}。(3)表達(dá)式5if5>6else(6if3>2else5)的值為{6}。(4)表達(dá)式1<2<3的值為{True}。(5)表達(dá)式3or5的值為(3}。(6)表達(dá)式0or5的值為{5}。(7)表達(dá)式3and5的值為{5}。(8)表達(dá)式3andnot5的值為{False}。(9)Python中用于表示邏輯與、邏輯或、邏輯非運(yùn)算的關(guān)鍵字分別是and、or和{not}(10)Python3.x語(yǔ)句foriinrange(3):print(i,end=',')的輸出結(jié)果為{0,1,2,}。(11)對(duì)于帶有else子句的for循環(huán)和while循環(huán),當(dāng)循環(huán)因循環(huán)條件不成立而自然結(jié)束時(shí){會(huì)}執(zhí)行else中的代碼。(12)在循環(huán)語(yǔ)句中,{break}語(yǔ)句的作用是提前結(jié)束本層循環(huán)。(13)在循環(huán)語(yǔ)句中,{continue}語(yǔ)句的作用是跳過當(dāng)前循環(huán)中的剩余語(yǔ)句,提前進(jìn)入下一次循環(huán)。(14)表達(dá)式[5foriinrange(3)]的值為{[5,5,5]}。(15)表達(dá)式3<5>2的值為{True}。3.判斷題(1)帶有else子句的循環(huán)如果因?yàn)閳?zhí)行了break語(yǔ)句而退出的話,則會(huì)執(zhí)行else子句中的代碼。(錯(cuò)誤)(2)對(duì)于帶有else子句的循環(huán)語(yǔ)句,如果是因?yàn)檠h(huán)條件表達(dá)式不成立而自然結(jié)束循環(huán),則執(zhí)行else子句中的代碼。(正確)(3)如果僅僅是用于控制循環(huán)次數(shù),那么使用foriinrange(20)和foriinrange(20,40)的作用是等價(jià)的。(正確)(4)在循環(huán)中continue語(yǔ)句的作用是跳出當(dāng)前循環(huán)。(錯(cuò)誤)(5)在編寫多層循環(huán)時(shí),為了提高運(yùn)行效率,應(yīng)盡量減少內(nèi)循環(huán)中不必要的計(jì)算。(正確)(6)帶有else子句的異常處理結(jié)構(gòu),如果不發(fā)生異常則執(zhí)行else子句中的代碼。(正確)(7)當(dāng)作為條件表達(dá)式時(shí),[]與None等價(jià)。(正確)(8)表達(dá)式[]==None的值為True。(錯(cuò)誤)(9)表達(dá)式pow(3,2)==3**2的值為True。(正確)(10)語(yǔ)句pass僅起到占位符的作用,并不會(huì)做任何操作。(正確)單元4序列數(shù)據(jù)與正則表達(dá)式操作單元4序列數(shù)據(jù)操作與格式化輸出1.選擇題(1)Python3解釋器執(zhí)行l(wèi)ist=[1,4,3],list.extend(list)后list的值是(C)。A.[1,4,3]B.[1,4,3,[]]C.[1,4,3,1,4,3]D.None(2)Python3解釋器對(duì)列表[1,2,[3,4],5,6]使用reverse方法執(zhí)行的結(jié)果為(A)。A.[6,5,[3,4],2,1]B.[6,5,[4,3],2,1]C.[6,5,2,1,[3,4]]D.報(bào)錯(cuò)(3)現(xiàn)有列表list=[1,2,3,4,5,6,7,8,9,0],那么Python3解釋器執(zhí)行l(wèi)ist[1:3]='abc'后執(zhí)行l(wèi)ist[2]的結(jié)果是(D)。A.4B.cC.a(chǎn)bcD.b(4)已知x=[3,5,7],那么執(zhí)行語(yǔ)句x[1:]=[2]之后,x的值為(B)。A.[3,5,7]B.[3,2]C.[3,5,2]D.[3](5)以下哪個(gè)屬于可變對(duì)象(B)A.?dāng)?shù)值類型(int,float)B.listC.tupleD.str(6)以下關(guān)于元組的描述,錯(cuò)誤的描述是(B)。A.元組的元素可以是整數(shù)、字符串、列表等Python支持的任何類型。B.與列表一樣,元組也append()、insert()函數(shù)。C.元組是不可變序列。D.元組比列表的訪問和處理速度快。(7)Python中,可以創(chuàng)建空元組,以下語(yǔ)句中哪一個(gè)用來創(chuàng)建空元組(C)。A.t=tuple()B.t=(0)C.t=()D.t=set()(8)Python中,以下所列方法,哪一個(gè)元組可以使用(D)。A.a(chǎn)ppend()B.insert()C.pop()D.len()(9)Python中,以下數(shù)據(jù)序列,哪一個(gè)是有序序列(C)。A.字典B.集合C.元組D.?dāng)?shù)組(10)Python中,以下所列運(yùn)算符,哪一個(gè)不能用于元組運(yùn)算(A)。A.-B.+C.*D.in(11)Python中,對(duì)于定義的元組tuple=(1,2,3,4,5,6,7),不能實(shí)現(xiàn)輸出元組的全部元素的是(D)。A.tupleB.tuple[:]C.tuple[0:len(tuple)]D.tuple(0:7)(12)Python中,對(duì)于定義的元組tuple=(1,2,3),以下各項(xiàng)操作,能成功執(zhí)行是(D)。A.tuple[2]=4B.tuple[0]=()C.tuple[0]=NoneD.tuple=(4,5,6)(13)以下不能創(chuàng)建一個(gè)字典的語(yǔ)句是(C)。A.dict1={}B.dict2={3:5}C.dict3=dict([2,5],[3,4])D.dict4=dict(([1,2],[3,4]))(14)Python中,對(duì)于已定義的集合fruits={"蘋果","桔子","梨","香蕉"},以下刪除集合元素的方法,不能成功執(zhí)行的方法是()A.fruits.remove("梨")B.fruits.discard("梨")C.fruits.pop()D.fruits.del("梨")(15)Python中,集合中添加的元素內(nèi)容不能是以下哪一個(gè)(A)。A.列表B.字符串C.元組D.?dāng)?shù)字(16)Python中,對(duì)于已定義的集合fruits={"蘋果","桔子"},以下哪一個(gè)語(yǔ)句無(wú)法成功執(zhí)行(B)。A.fruits.add("香蕉")B.fruits.insert("香蕉")C.fruits.update({"香蕉"})D.fruits.clear()(17)Python中,以下關(guān)于集合的描述中,錯(cuò)誤是(D)。A.無(wú)法刪除集合中指定位置的元素,只能刪除特定值的元素。B.Python集合中的元素不允許重復(fù)。C.Python集合是無(wú)序。D.Python集合可以包含相同的元素。(18)Python解釋器執(zhí)行print('金額:{0:f}元'.format(1.5000))的結(jié)果為(C)。A.金額:1.5元B.金額:1.500元'C.金額:1.500000元D.金額:¥1.50000元(19)"ab"+"c"*2結(jié)果是:(C)A.a(chǎn)bc2B.a(chǎn)bcabcC.a(chǎn)bccD.a(chǎn)babcc(20)關(guān)于字符串下列說法錯(cuò)誤的是(B)A.字符應(yīng)該視為長(zhǎng)度為1的字符串B.字符串以\0標(biāo)志字符串的結(jié)束C.既可以用單引號(hào),也可以用雙引號(hào)創(chuàng)建字符串D.在三引號(hào)字符串中可以包含換行回車等特殊字符2.填空題(1)Python3解釋器執(zhí)行代碼后,list2的結(jié)果是([1,2,['a',5]])。>>>list2=list1=[1,2,[(3,4),5]]>>>list1[2][0]='a'>>>list2(2)現(xiàn)有列表list=[1,2,3,4,5,6,7,8,9,0],那么Python3解釋器執(zhí)行l(wèi)ist[1::2]的結(jié)果是([2,4,6,8,0])。(3)已知x=[3],那么執(zhí)行x+=[5]之后x的值為([3,5])。(4)表達(dá)式[3]in[1,2,3,4]的值為(False)。(5)(del)命令既可以刪除列表中的一個(gè)元素,也可以刪除整個(gè)列表。(6)已知a=[1,2,3]和b=[1,2,4],那么id(a[1])==id(b[1])的執(zhí)行結(jié)果為(True)。(7)截取操作list(range(6))[::2]執(zhí)行結(jié)果為([0,2,4])。(8)已知x=[3,5,7],那么表達(dá)式x[10:]的值為([])。(9)表達(dá)式(1,)+(2,)的值為((1,2))。(10)現(xiàn)有d={},Python3解釋器執(zhí)行d['a']='b'后d的結(jié)果是({'a':'b'})。(11)表達(dá)式type({})==dict的值為(True)。(12)已知x={1:2},那么執(zhí)行語(yǔ)句x[2]=3之后,x的值為({1:2,2:3})。(13)已知x={'a':'b','c':'d'},那么表達(dá)式'a'inx的值為(True)。(14)表達(dá)式'ac'in'abce'的值為(False)。(15)表達(dá)式'a'+'b'的值為('ab')。(16)已知x='123'和y='456',那么表達(dá)式x+y的值為('123456')。3.判斷題(1)已知x是個(gè)列表對(duì)象,那么執(zhí)行語(yǔ)句y=x之后,對(duì)y所做的任何操作都會(huì)同樣作用到x上。(正確)(2)列表對(duì)象的extend()方法屬于原地操作,調(diào)用前后列表對(duì)象的地址不變。(正確)(3)已知列表x=[1,2,3],那么執(zhí)行語(yǔ)句x=3之后,變量x的地址不變。(錯(cuò)誤)(4)使用列表對(duì)象的remove()方法可以刪除列表中首次出現(xiàn)的指定元素,如果列中不存在要?jiǎng)h除的指定元素則拋出異常。(正確)(5)假設(shè)x是含有5個(gè)元素的列表,那么截取操作x[10:]是無(wú)法執(zhí)行的,會(huì)拋出異常。(錯(cuò)誤)(6)只能通過截取訪問列表中的元素,不能使用截取修改列表中的元素。(錯(cuò)誤)(7)Python列表中所有元素必須為相同類型的數(shù)據(jù)。(錯(cuò)誤)(8)在Python3中語(yǔ)句print(*[1,2,3])不能正確執(zhí)行。(錯(cuò)誤)(9)表達(dá)式list('[1,2,3]')的值是[1,2,3]。(錯(cuò)誤)(10)同一個(gè)列表對(duì)象中的元素類型可以各不相同。(正確)(11)創(chuàng)建只包含一個(gè)元素的元組時(shí),必須在元素后面加一個(gè)逗號(hào),例如(3,)。(正確)(12)同一個(gè)元組對(duì)象中所有元素必須為相同類型。(錯(cuò)誤)(13)集合可以作為元組的元素。(正確)(14)Python元組支持雙向索引。(正確)(15)元組的訪問速度比列表要快一些,如果定義了一系列常量值,并且主要用途僅僅是對(duì)其進(jìn)行遍歷二不需要進(jìn)行任何修改,建議使用元組而不使用列表。(正確)(16)只能對(duì)列表進(jìn)行截取操作,不能對(duì)元組和字符串進(jìn)行截取操作。(錯(cuò)誤)(17)只能通過截取訪問元組中的元素,不能使用截取修改元組中的元素。(正確)(18)集合可以作為字典的鍵。(錯(cuò)誤)(19)集合可以作為字典的值。(正確)(20)Python內(nèi)置的集合set中元素順序是按元素的哈希值進(jìn)行存儲(chǔ)的,并不是按先后順序。(正確)(21)加法運(yùn)算符可以用來連接字符串并生成新字符串。(正確)(22)使用正則表達(dá)式對(duì)字符串進(jìn)行分割時(shí),可以指定多個(gè)分隔符,而字符串對(duì)象的split()方法無(wú)法做到這一點(diǎn)。(正確)(23)表達(dá)式'a'+1的值為'b'。(錯(cuò)誤)(24)放在一對(duì)三引號(hào)之間的任何內(nèi)容將被認(rèn)為是注釋。(錯(cuò)誤)(25)Python列表、元組、字符串都屬于有序序列。(正確)單元5函數(shù)應(yīng)用與模塊化程序設(shè)計(jì)單元五1.選擇題(1)Python中==運(yùn)算符比較兩個(gè)對(duì)象的值,下列選項(xiàng)中哪一個(gè)是is比較對(duì)象的因素(A)。A.id()B.sum()C.max()D.min()(2)調(diào)用以下函數(shù)返回的值(D)defmyfun()passA.0B.出錯(cuò)不能運(yùn)行C.空字符串D.None(3)函數(shù)如下:defshowNumber(numbers):forninnumbers:print(n)下面那些在調(diào)用函數(shù)時(shí)會(huì)報(bào)錯(cuò)(C)A.showNumber([2,4,5])B.showNumber('abcesf')C.showNumber(3.4)D.showNumber((12,4,5))(4)函數(shù)如下defchanageInt(number2):number2=number2+1print("changeInt:number2=",number2)number1=2chanageInt(number1)print("number:",number1)輸出結(jié)果哪項(xiàng)是正確的(B)A.changeInt:number2=3B.changeInt:number2=3number:3number:2C.number:2D.number:2changeInt:number2=2changeInt:number2=3(5)函數(shù)如下defchanageList(list):list.append("end")print("list",list)#調(diào)用strs=['1','2']chanageList(strs)print("strs",strs)下面對(duì)strs的值輸出正確的是(D)A.strs['1','2']B.list['1','2']C.list['1','2','end']D.strs['1','2','end'](6)導(dǎo)入模塊的方式錯(cuò)誤的是(D)A.importtestB.fromtestimport*C.importtestasmD.importmfromtest(7)以下關(guān)于模塊說法錯(cuò)誤的是(C)A.一個(gè)xx.py就是一個(gè)模塊B.任何一個(gè)普通的xx.py文件可以作為模塊導(dǎo)入C.模塊文件的擴(kuò)展名不一定是.pyD.運(yùn)行時(shí)會(huì)從指定的文件夾搜索導(dǎo)入的模塊,如果沒有,會(huì)報(bào)錯(cuò)異常(8)以下關(guān)于函數(shù)定義的規(guī)則,正確的描述有(ABCD)A.函數(shù)代碼塊以def關(guān)鍵詞開頭,后接函數(shù)標(biāo)識(shí)符名稱和圓括號(hào)()。B.任何傳入?yún)?shù)和自變量必須放在圓括號(hào)中間,圓括號(hào)之間可以用于定義參數(shù)。C.return[表達(dá)式]結(jié)束函數(shù),選擇性地返回一個(gè)值給調(diào)用方。D.函數(shù)內(nèi)容以冒號(hào)起始,并且縮進(jìn)。(9)下面代碼的運(yùn)行結(jié)果是(A)。deftotal(a,b=3,c=5):returna+b+cprint(total(a=8,c=2))A.13B.16C.15D.14(10)下面的代碼的運(yùn)行結(jié)果是(C)。defdemo(a,b,c=3,d=100):returnsum((a,b,c,d))print(demo(1,2,d=3))A.11B.10C.9D.82.填空題(1)Python標(biāo)準(zhǔn)庫(kù)math中用來計(jì)算平方根的函數(shù)是{sqrt}。(2)查看變量?jī)?nèi)存地址的Python內(nèi)置函數(shù)是{id()}。(3)已知x=3,并且id(x)的返回值為496103280,那么執(zhí)行語(yǔ)句x+=6之后,表達(dá)式id(x)==496103280的值為{False}(4)表達(dá)式int('123',16)的值為{291}。(8)表達(dá)式abs(-3)的值為{3}。(9)Python內(nèi)置函數(shù){len()}可以返回列表、元組、字典、集合、字符串以及range對(duì)象中元素個(gè)數(shù)。(10)Python內(nèi)置函數(shù){max()}用來返回序列中的最大元素。(11)Python內(nèi)置函數(shù){min()}用來返回序列中的最小元素。(12)Python內(nèi)置函數(shù){sum()}用來返回?cái)?shù)值型序列中所有元素之和。(13)表達(dá)式abs(3+4j)的值為{5.0}。(14)表達(dá)式sum(range(1,10))的值為{45}。(15)表達(dá)式range(10,20)[4]的值為(14}。(16)表達(dá)式round(3.7)的值為{4}。(17)Python中定義函數(shù)的關(guān)鍵字是{def}。(18)如果函數(shù)中沒有return語(yǔ)句或者return語(yǔ)句不帶任何返回值,那么該函數(shù)的返回值為{None}。(19)假設(shè)有Python程序文件abc.py,其中只有一條語(yǔ)句print(__name__),那么直接運(yùn)行該程序時(shí)得到的結(jié)果為{__main__}。(20)已知函數(shù)定義defdemo(x,y,op):returneval(str(x)+op+str(y))那么表達(dá)式demo(3,5,'+')的值為{8}。3.判斷題(1)只有Python擴(kuò)展庫(kù)需要導(dǎo)入以后才能使用其中的對(duì)象,Python標(biāo)準(zhǔn)庫(kù)不需要導(dǎo)入即可使用其中的所有對(duì)象和方法。(錯(cuò)誤)(2)調(diào)用函數(shù)時(shí),在實(shí)參前面加一個(gè)型號(hào)*表示序列解包。(正確)(3)盡管可以使用import語(yǔ)句一次導(dǎo)入任意多個(gè)標(biāo)準(zhǔn)庫(kù)或擴(kuò)展庫(kù),但是仍建議每次只導(dǎo)入一個(gè)標(biāo)準(zhǔn)庫(kù)或擴(kuò)展庫(kù)。(正確)(4)函數(shù)是代碼復(fù)用的一種方式。(正確)(5)定義函數(shù)時(shí),即使該函數(shù)不需要接收任何參數(shù),也必須保留一對(duì)空的圓括號(hào)來表示這是一個(gè)函數(shù)。(正確)(6)編寫函數(shù)時(shí),一般建議先對(duì)參數(shù)進(jìn)行合法性檢查,然后再編寫正常的功能代碼。(正確)(7)一個(gè)函數(shù)如果帶有默認(rèn)值參數(shù),那么必須所有參數(shù)都設(shè)置默認(rèn)值。(錯(cuò)誤)(8)定義Python函數(shù)時(shí)必須指定函數(shù)返回值類型。(錯(cuò)誤)(9)定義Python函數(shù)時(shí),如果函數(shù)中沒有return語(yǔ)句,則默認(rèn)返回空值None。(正確)(10)如果在函數(shù)中有語(yǔ)句return3,那么該函數(shù)一定會(huì)返回整數(shù)3。(錯(cuò)誤)(11)函數(shù)中必須包含return語(yǔ)句。(錯(cuò)誤)(12)函數(shù)中的return語(yǔ)句一定能夠得到執(zhí)行。(錯(cuò)誤)(13)在函數(shù)內(nèi)部直接修改形參的值并不影響外部實(shí)參的值。(正確)(14)在函數(shù)內(nèi)部沒有任何方法可以通過形參影響實(shí)參的值。(錯(cuò)誤)(15)調(diào)用帶有默認(rèn)值參數(shù)的函數(shù)時(shí),不能為默認(rèn)值參數(shù)傳遞任何值,必須使用函數(shù)定義時(shí)設(shè)置的默認(rèn)值。(錯(cuò)誤)(16)形參可以看做是函數(shù)內(nèi)部的局部變量,函數(shù)運(yùn)行結(jié)束之后形參就不可訪問了。(正確)(17)假設(shè)已導(dǎo)入random標(biāo)準(zhǔn)庫(kù),那么表達(dá)式max([random.randint(1,10)foriinrange(10)])的值一定是10。(錯(cuò)誤)(18)Python標(biāo)準(zhǔn)庫(kù)random的方法randint(m,n)用來生成一個(gè)[m,n]區(qū)間上的隨機(jī)整數(shù)。(正確)(19)在Python中定義函數(shù)時(shí)不需要聲明函數(shù)參數(shù)的類型。(正確)(20)定義函數(shù)時(shí),帶有默認(rèn)值的參數(shù)必須出現(xiàn)在參數(shù)列表的最右端,任何一個(gè)帶有默認(rèn)值的參數(shù)右邊不允許出現(xiàn)沒有默認(rèn)值的參數(shù)。(正確)單元6類定義與使用單元6類定義與使用1.選擇題(1)以下哪個(gè)不屬于面向?qū)ο蟮奶卣鳎―)A.封裝B.繼承C.多態(tài)D.復(fù)合(2)定義類如下:classTest()。pass下面說法正確的是(CD)A.該類實(shí)例中包含__dir__方法B.該類實(shí)例中包含__hash__方法C.該類實(shí)例中只包含__dir__,不包含__hash__D.該類沒有定義任何方法,所以該實(shí)例中沒有包含任何方法(3)實(shí)現(xiàn)以下哪個(gè)方法可以讓對(duì)象像函數(shù)一樣被調(diào)用(C)A.str()B.iter()C.call()D.next()(4)定義類如下:classShow:defshowInfo(self):print(self.x)下面描述正確的是(BC)A.該類不可以實(shí)例化B.該類可以實(shí)例化,但不能通過對(duì)象正常調(diào)用showInfo()C.在pycharm中該類實(shí)例化運(yùn)行時(shí)會(huì)出現(xiàn)語(yǔ)法錯(cuò)誤“'Show'objecthasnoattribute'x'”D.該類可以實(shí)例化,并且能通過對(duì)象正常調(diào)用showInfo()(5)關(guān)于Python類說法錯(cuò)誤的是(B)A.類的實(shí)例方法必須創(chuàng)建對(duì)象后才可以調(diào)用B.類的實(shí)例方法必須創(chuàng)建對(duì)象前才可以調(diào)用C.類的類方法可以使用對(duì)象名和類名來調(diào)用D.類的靜態(tài)屬性可以用類名和對(duì)象名來調(diào)用(6)定義類如下classShow:def__init__(self,name):=namedefshowInfo(self):print()下面代碼能正常執(zhí)行的(C)A.h=Showh.showInfo()B.h=Show()h.showInfo("張三")C.h=Show("張三")h.showInfo()D.h=Show('admin')showInfo(7)定義類如下:classA():defa(self):print("a")classB():defb(self):print("b")classC():defc(self):print("c")classD(A,C):defd(self):print("d")d=D()d.a()d.c()d.d()程序能執(zhí)行的結(jié)果是(D)A.dB.a(chǎn),dC.daD.a(chǎn)cd(8)在類外部訪問類內(nèi)定義的類屬性,有效的訪問形式有(BD)。A.屬性名稱B.類名稱.屬性名稱C.self.屬性名稱D.類實(shí)例名稱.屬性名稱(9)以下關(guān)于類屬性的描述,正確的是(AB)。A.類屬性是在類中定義在方法之外的變量。B.類屬性是所有實(shí)例化對(duì)象公用的,可以通過類名稱或?qū)嵗Q訪問類屬性。C.類屬性只能通過實(shí)例名稱訪問,不能通過類名稱訪問。D.類屬性通常在類的__init__()方法內(nèi)部定義。(10)以下關(guān)于實(shí)例屬性的描述,正確的是(BCD)。A.實(shí)例屬性是所有實(shí)例化對(duì)象公用的,可以通過類名稱或?qū)嵗Q訪問類屬性。B.由于實(shí)例屬性優(yōu)先級(jí)比類屬性高,相同名稱的實(shí)例屬性將屏蔽掉類屬性。C.實(shí)例屬性只屬于類的實(shí)例,只能通過實(shí)例名稱訪問。D.實(shí)例屬性是指定義在方法內(nèi)部的屬性。2.填空題(1)Python使用{class}關(guān)鍵字來定義類。(2)Python內(nèi)建異常類的基類是{BaseException}。(3)在Python中,不論類的名字是什么,構(gòu)造方法的名字都是{__init__}。(4)如果在設(shè)計(jì)一個(gè)類時(shí)實(shí)現(xiàn)了contains()方法,那么該類的對(duì)象會(huì)自動(dòng)支持{in}運(yùn)算符。(5)Python身份運(yùn)算符{is}用于判斷兩個(gè)變量的引用對(duì)象是否為同一個(gè)。(6)在Python類的內(nèi)部,使用def關(guān)鍵字可以定義屬于類的方法,這種方法需要使用{@classmethod}來修飾。(7)在Python類的內(nèi)部,還可以定義靜態(tài)方法,這種靜態(tài)方法需要使用{@staticmethod}來修飾,(8)Python中,類有一個(gè)名為{__init__()}的特殊方法稱之為構(gòu)造方法,該方法在類實(shí)例化時(shí)會(huì)自動(dòng)調(diào)用,不需要顯式去調(diào)用。(9)內(nèi)部作用域想修改外部作用域的變量時(shí),需要使用關(guān)鍵字{global}。(10)在函數(shù)內(nèi)部可以通過關(guān)鍵字{global}來定義全局變量。3.判斷題(1)繼承自threading.Thread類的派生類中不能有普通的成員方法。(錯(cuò)誤)(2)Python中一切內(nèi)容都可以稱為對(duì)象。(正確)(3)在一個(gè)軟件的設(shè)計(jì)與開發(fā)中,所有類名、函數(shù)名、變量名都應(yīng)該遵循統(tǒng)一的風(fēng)格和規(guī)范。(正確)(4)定義類時(shí)所有實(shí)例方法的第一個(gè)參數(shù)用來表示對(duì)象本身,在類的外部通過對(duì)象名來調(diào)用實(shí)例方法時(shí)不需要為該參數(shù)傳值。(正確)(5)在面向?qū)ο蟪绦蛟O(shè)計(jì)中,函數(shù)和方法是完全一樣的,都必須為所有參數(shù)進(jìn)行傳值。(錯(cuò)誤)(6)Python中沒有嚴(yán)格意義上的私有成員。(正確)(7)Python支持多繼承,如果父類中有相同的方法名,而在子類中調(diào)用時(shí)沒有指定父類名,則Python解釋器將從左向右按順序進(jìn)行搜索。(正確)(8)在Python中定義類時(shí)實(shí)例方法的第一個(gè)參數(shù)名稱必須是self。(錯(cuò)誤)(9)在Python中定義類時(shí)實(shí)例方法的第一個(gè)參數(shù)名稱不管是什么,都表示對(duì)象自身。(正確)(10)Python類不支持多繼承。(錯(cuò)誤)(11)屬性可以像數(shù)據(jù)成員一樣進(jìn)行訪問,但賦值時(shí)具有方法的優(yōu)點(diǎn),可以對(duì)新值進(jìn)行檢查。(正確)(12)只可以動(dòng)態(tài)為對(duì)象增加數(shù)據(jù)成員,而不能為對(duì)象動(dòng)態(tài)增加成員方法。(錯(cuò)誤)(13)在Python中函數(shù)和類都屬于可調(diào)用對(duì)象。(正確)(14)在函數(shù)內(nèi)部沒有辦法定義全局變量。(錯(cuò)誤)(15)在同一個(gè)作用域內(nèi),局部變量會(huì)隱藏同名的全局變量。(正確)單元7文件操作與異常處理單元7文件操作與異常處理1.選擇題(1)Python中,打開文本文件message.txt可以有多種方式,以下選項(xiàng)錯(cuò)誤的是(D)。A."demo\\message.txt"B."demo/message.txt"C.r"demo\message.txt"D."demo\message.txt"(2)打開的文件不存在時(shí),會(huì)引發(fā)的異常是(A)。A.IOErrorB.ImportErrorC.IndentationErrorD.IndexError(3)無(wú)法引入模塊或包引發(fā)的異常是(B)。A.IOErrorB.ImportErrorC.IndentationErrorD.IndexError(4)Python提供了seek()方法將文件的指針移動(dòng)到指定位置,seek(n,1)表示(B)。A.從起始位置即文件首行首字符開始移動(dòng)n個(gè)字符B.從當(dāng)前位置往后移動(dòng)n個(gè)字符C.從文件的結(jié)尾往前移動(dòng)n個(gè)字符D.從起始位置即文件首行首字符開始移動(dòng)n+1個(gè)字符(5)Python中,使用open()方法打開一個(gè)文件后,可以讀取該文件中的內(nèi)容,讀取文件內(nèi)容的方式有多種。其中每次只能讀取一行的是(D)。A.readlines()B.read()C.readall()D.readline()(6)Python中,os模塊中提供了創(chuàng)建文件夾的方法,一次創(chuàng)建多級(jí)文件夾使用(B)方法。A.mkdir()B.makedirs()C.walk()D.tell()(7)以下哪一項(xiàng)不會(huì)影響Python程序的正常運(yùn)行。(D)A.拼寫錯(cuò)誤B.錯(cuò)誤表達(dá)式C.縮進(jìn)錯(cuò)誤D.手動(dòng)拋出異常(8)有關(guān)異常說法正確的是(B)A.程序中拋出異常終止程序B.程序中拋出異常不一定終止程序C.拼寫錯(cuò)誤會(huì)導(dǎo)致程序終止D.縮進(jìn)錯(cuò)誤會(huì)導(dǎo)致程序終止(9)對(duì)以下程序描述錯(cuò)誤的是(A)try:#語(yǔ)句塊1exceptIndexErroraserr:#語(yǔ)句塊2A.該程序?qū)Ξ惓L幚砹?,因此一定不?huì)終止程序B.該程序?qū)Ξ惓L幚砹?,不一定不?huì)因異常引發(fā)終止C.語(yǔ)句塊1,如果拋出IndexError異常,不會(huì)因?yàn)楫惓=K止程序D.語(yǔ)句塊2不一定會(huì)執(zhí)行D.以上都正確2.填空題(1)當(dāng)前工作文件夾是指當(dāng)前運(yùn)行文件或打開文件所在的文件夾,Python中,通過os模塊提供的{getcwd()}方法獲取當(dāng)前工作文件夾。(2)對(duì)文件進(jìn)行寫入操作之后,{flush()}方法用來在不關(guān)閉文件對(duì)象的情況下將緩沖區(qū)內(nèi)容寫入文件。(3)Python內(nèi)置函數(shù){open()}用來打開或創(chuàng)建文件并返回文件對(duì)象。(4)使用上下文管理關(guān)鍵字{with}可以自動(dòng)管理文件對(duì)象,不論何種原因結(jié)束該關(guān)鍵字中的語(yǔ)句塊,都能保證文件被正確關(guān)閉。(5)Python標(biāo)準(zhǔn)庫(kù)os中用來列出指定文件夾中的文件和子文件夾列表的方式是{listdir()}。(6)Python標(biāo)準(zhǔn)庫(kù)os.path中用來判斷指定文件是否存在的方法是{exists()}。(7)Python標(biāo)準(zhǔn)庫(kù)os.path中用來判斷指定路徑是否為文件的方法是{isfile()}。(8)Python標(biāo)準(zhǔn)庫(kù)os.path中用來判斷指定路徑是否為文件夾的方法是{isdir()}。3.判斷題(1)使用內(nèi)置函數(shù)open()且以“w”模式打開的文件,文件指針默認(rèn)指向文件尾。(錯(cuò)誤)(2)使用內(nèi)置函數(shù)open()打開文件時(shí),只要文件路徑正確就總是可以正確打開的。(錯(cuò)誤)(3)對(duì)文件進(jìn)行讀寫操作之后必須顯式關(guān)閉文件以確保所有內(nèi)容都得到保存。(正確)(4)程序中異常處理結(jié)構(gòu)在大多數(shù)情況下是沒必要的。(錯(cuò)誤)(5)在try…except…else結(jié)構(gòu)中,如果try塊的語(yǔ)句引發(fā)了異常則會(huì)執(zhí)行else塊中的代碼。(錯(cuò)誤)(6)異常處理結(jié)構(gòu)中的finally塊中代碼仍然有可能出錯(cuò),從而再次引發(fā)異常。(正確)(7)二進(jìn)制文件不能使用記事本程序打開。(錯(cuò)誤)(8)使用普通文本編輯器軟件也可以正常查看二進(jìn)制文件的內(nèi)容。(錯(cuò)誤)(9)二進(jìn)制文件也可以使用記事本或其他文本編輯器打開,但是一般來說無(wú)法正常查看其中的內(nèi)容。(正確)(10)Python標(biāo)準(zhǔn)庫(kù)os中的方法exists()可以用來測(cè)試給定路徑的文件是否存在。(正確)(11)Python標(biāo)準(zhǔn)庫(kù)os中的方法isdir()可以用來測(cè)試給定的路徑是否為文件夾。(正確)(12)在異常處理結(jié)構(gòu)中,不論是否發(fā)生異常,finally子句中的代碼總是會(huì)執(zhí)行的。(正確)(13)以寫模式打開的文件無(wú)法進(jìn)行讀操作。(正確)(14)以讀模式打開文件時(shí),文件指針指向文件開始處。(正確)(15)以追加模式打開文件時(shí),文件指針指向文件尾。(正確)單元12基于Django框架的Web程序設(shè)計(jì)單元8數(shù)據(jù)庫(kù)訪問與使用1.選擇題(1)如果有這樣一段代碼:使用connect()方法返回一個(gè)連接對(duì)象conn,接著使用連接對(duì)象conn的cursor()方法返回一個(gè)游標(biāo)對(duì)象cur,那么使用cur對(duì)象(C)方法才能獲得結(jié)果集中的所有行。A.fetchmany()B.fetchone()C.fetchall()D.ececutemany()(2)Python創(chuàng)建數(shù)據(jù)表時(shí):使用sqlite3的(A)方法創(chuàng)建連接對(duì)象。A.connect()B.cursor()C.execute()D.close()(3)Python創(chuàng)建數(shù)據(jù)表時(shí):使用連接對(duì)象的(B)方法獲取游標(biāo)對(duì)象。A.connect()B.cursor()C.execute()D.close()(4)Python創(chuàng)建數(shù)據(jù)表時(shí):使用游標(biāo)對(duì)象的(C)方法執(zhí)行SQL語(yǔ)句。A.connect()B.cursor()C.execute()D.close()(5)在Python3版本中用于連接MySQL服務(wù)器的庫(kù)是(C)。A.MySQLdbB.MySQLC.pymysqlD.SQLite3(6)在select查詢語(yǔ)句中,使用問號(hào)“?”作為占位符代替具體的字段值,然后使用一個(gè)(B)來替換問號(hào)。A.列表B.元組C.字典D.字符串(7)SQL查詢語(yǔ)句"select*fromteacherwhereID>2"與以下哪一條語(yǔ)句等價(jià)。(C)A."select*fromteacherwhereID>?",(2)B."select*fromteacherwhereID>%s",(2,)C."select*fromteacherwhereID>?",(2,)D."select*fromteacherwhereID>?",[2](8)有一個(gè)游標(biāo)對(duì)象cursor,使用該游標(biāo)對(duì)象的execute()方法將數(shù)據(jù)表teacher中ID字段值為3的姓名更新為“夏麗”,正確的語(yǔ)句是(A)。A.cursor.execute("updateteachersetname=?whereID=?",('夏麗',3))B.cursor.execute("updateteachersetname=?whereID=?",['夏麗',3])C.cursor.execute("updateteachersetname=%swhereID=%s",('夏麗',3))D.cursor.execute("updateteachersetname=*whereID=*",('夏麗',3))(9)Python查詢MySQL數(shù)據(jù)表時(shí),使用(A)方法獲取數(shù)據(jù)表中1條記錄數(shù)據(jù)。A.fetchone()B.fetchall()C.fetchmany()D.fetch()(10)pythondbAPI2.0的事務(wù)提供(B)方法用于回滾當(dāng)前游標(biāo)的所有操作。A.commit()B.rollback()C.close()D.back()2.填空題(1)Python用來訪問和操作內(nèi)置數(shù)據(jù)庫(kù)SQLite的標(biāo)準(zhǔn)庫(kù)是{sqlite3}。(2)用于刪除數(shù)據(jù)表test中所有name字段值為'10001'的記錄的SQL語(yǔ)句為{deletefromtestwherename='10001'}.(3)Python標(biāo)準(zhǔn)庫(kù){sqlite3},提供了對(duì)SQLite數(shù)據(jù)庫(kù)的訪問接口。(4)在Python中進(jìn)行數(shù)據(jù)庫(kù)連接時(shí),使用{connect()}方法,返回一個(gè)連接對(duì)象。(5)有一個(gè)游標(biāo)對(duì)象cur,使用游標(biāo)對(duì)象的{execute()}方法來執(zhí)行一條SQL語(yǔ)句。(6)向SQLite3的數(shù)據(jù)表中新增數(shù)據(jù),應(yīng)使用{insertinto}語(yǔ)句。(7)從SQLite3的數(shù)據(jù)表中獲取所需的數(shù)據(jù)后,使用連接對(duì)象的{close()}方法關(guān)閉連接對(duì)象。(8)使用Select查詢語(yǔ)句查詢SQLite數(shù)據(jù)表中的數(shù)據(jù)時(shí),使用{?}作為占位符代替具體的字段值。(9)Python查詢MySQL數(shù)據(jù)表時(shí),使用{fetchall()}方法獲取數(shù)據(jù)表中多條記錄數(shù)據(jù)。(10)使用帶參數(shù)的Insert語(yǔ)句向MySQL數(shù)據(jù)表student插入記錄時(shí),可以使用{s%}作為占位符。3.判斷題(1)Python只能使用內(nèi)置數(shù)據(jù)庫(kù)SQLite,無(wú)法訪問MSSQLServer、Oracle、MySQL等數(shù)據(jù)庫(kù)。(錯(cuò)誤)(2)SQLite是一種嵌入式數(shù)據(jù)庫(kù),它的數(shù)據(jù)庫(kù)就是一個(gè)文件。(正確)(3)Python內(nèi)置了SQLite3模塊,在Python中使用SQLite,不需要額外安裝任何模塊,就可以直接使用。(正確)(4)使用sqlite3.connect()方法連接SQLite數(shù)據(jù)庫(kù)文件dbtest.db,如果該文件并不存在,必須先創(chuàng)建好數(shù)據(jù)庫(kù)文件dbtest.db。(錯(cuò)誤)(5)對(duì)于支持事務(wù)的數(shù)據(jù)庫(kù),在Python數(shù)據(jù)庫(kù)編程時(shí),游標(biāo)建立就會(huì)自動(dòng)開始了一個(gè)隱形的數(shù)據(jù)庫(kù)事務(wù)。(正確)(6)pythondbAPI2.0的事務(wù)提供的commit()方法用于執(zhí)行游標(biāo)所有的更新操作。(正確)(7)事務(wù)機(jī)制的原子性是指一個(gè)事務(wù)是一個(gè)不可分割的工作單位,事務(wù)中包括的諸操作要么都做,要么都不做。(正確)(8)當(dāng)有數(shù)據(jù)處理時(shí)的錯(cuò)誤發(fā)生時(shí)觸發(fā)DatabaseError異常。(錯(cuò)誤)。(9)MySQL數(shù)據(jù)庫(kù)連接成功后,yi可以使用execu

溫馨提示

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

評(píng)論

0/150

提交評(píng)論