資源簡介 專題4 Python語言基礎知識點一 Python表達式1.下列表達式2023%400%10**2//2的計算結果是( )A.23 B.11C.0 D.42.Python表達式len(″python20221″)+15//2**3*3+int(-4.99)的值為( )A.9 B.10C.12 D.133.下列Python表達式中值最大的是( )A.ord(″A″)% round(2.6)B.6//2+(-2)%6C.int(″6″+″2″)/abs(-10)D.len(″1234″)*24.下列表達式中,值為True的是( )A.″Xj″ in ″Xuejun″B.abs(int(-2.9))==len(″xjx″)C.″xj″>″XJ″ and 5**2>2**5D.″Xuejun″[:3]==″Xue″5.下列表達式中,值為True的是( )A.not abs(-12.7)>12B.3**2<=2**3C.round(3.1415,3)==3.141 and ″2″ in ″3+27″D.3?。?+2 or 5>=56.下列Python表達式值為True的是( )A.″average″[3:5]==″er″B.30%7+10//2**3==3C.abs(int(-4.95))==5D.4 in range(4)7.下列Python表達式的值為數值 5 的是( )A.int(max(″5″,″11″,″100″))B.len([1,2,3,5])C.str(5)D.abs(-15/3)知識點二 數據類型之字符串和列表1.已知變量s=″2022py″,則表達式s[2]*2+s[-2::]的值是( )A.″22p″ B.″4py″C.″22py″ D.″4p″2.若a=″20230678″,b=[″2″,″4″,″6″],則表達式a[5:]+b[2:1:-1]*3的值是( )A.″24″ B.″696″C.″678666″ D.″0678444″3.若n='PythonPythonPython',則表達式n[3::3]的值為( )A.'hPhPh' B.'pyt'C.'tntntn' D.'nhynhynhy'4.有如下Python程序段:cy=[″取長補短″,″一言為定″,″張燈結彩″,″坐井觀天″,″風平浪靜″,″張三李四″]print(cy[2:5][1][3])程序運行后,輸出的結果是( )A.[″張燈結彩″,″坐井觀天″,″風平浪靜″]B.[″坐井觀天″]C.彩D.天知識點三 字典1.有如下Python程序段:dic={″apple″:5,″cake″:10,″computer″:3000}lis=[[1,2,3],″apple″,″computer″,[8,0,9]]ans=0for i in lis:if len(i)<=3:ans+=i[-1]elif i in dic:ans+=dic[i]print(ans)執行該程序段后,輸出結果是( )A.3005 B.12C.3014 D.30172.有如下Python程序段:dic={″蘋果″:[9.98,12.98],″香梨″:[8.98,16.98]}dic[″蘋果″][1]=15.98dic[″葡萄″]=[12.58,13.98]print(dic)該程序運行后輸出的結果為( )A.{″蘋果″:[15.98,12.98],″香梨″:[8.98,16.98]}B.{″蘋果″:[9.98,15.98],″香梨″:[8.98,16.98]}C.{″蘋果″:[15.98,12.98],″香梨″:[8.98,16.98],″葡萄″:[12.58,13.98]}D.{″蘋果″:[9.98,15.98],″香梨″:[8.98,16.98],″葡萄″:[12.58,13.98]}3.有如下Python程序段:li=[[″a″,10],[″b″,20],[″c″,30]]dic={}for i in range(len(li)):dic[li[i][0]]=li[i][1]print(dic)運行該段程序后,輸出內容為( )A.{'a',10,'b',20,'c',30}B.{10,20,30}C.{['a','b','c'],[10,20,30]}D.{'a':10,'b':20,'C':30}4.有如下Python程序段:f=[″begin″,″burn″,″dig″,″Dairy″,″delay″,″hit″,″cabbage″,″hang″]dic={}for line in f:if line[0] in dic:dic[line[0]]+=1else:dic[line[0]]=1print(dic)運行程序后,下列說法正確的是( )A.字典dic中的鍵值對共有4對B.dic[″Dairy″]的值為3C.字典dic的作用是統計每個單詞出現的次數D.字典dic中值為2的鍵值對有3對5.某Python程序如下:s=″san xian lian meng.″dic={}for i in s:if i in dic:dic[i]+=1else:dic[i]=1在輸出的字典dic中,dic[″n″]的值為( )A.1 B.2 C.3 D.46.使用字典Oil_dic={″92號″:8.73,″95號″:9.14}存儲油價信息,經核實后92號油價是8.61,正確修改的語句是( )A.Oil_dic[0]=8.61B.Oil_d[92號]=8.61C.Oil_dic[1]=8.61D.Oil_dic[″92號″]=8.617.字典data中存儲了如下數據:{″課程″:[″舞蹈″,″Python″,″數學″],″地點″:[″舞蹈房″,″計算機房″,″教室″],″時長″:[″60分鐘″,″40分鐘″,″90分鐘″]},若將″數學″課的時長調整為″70分鐘″,以下操作可行的是( )A.data[2][2]=″70分鐘″B.data[″時長″][-1]=″70分鐘″C.data[-1][2]=″70分鐘″D.data[″時長″][3]=″70分鐘″8.已知字典dic存放學生的姓名和對應的語數英成績,dic={″姓名″:″小紅″,″語文″:101,″數學″:118,″英語″:132},現要在字典dic中增加一個鍵為″技術″,值為″97″的元素,下列語句正確的是( )A.dic[技術]=97B.dic[″技術″]=[″技術″:97]C.dic[″技術″]=97D.dic[″技術″]={97}9.有如下Python程序段:s=″Python″dic={″t″:1,″y″:2,″o″:3,″P″:4,″p″:5,″h″:6,″n″:7}list=[3,7,1,6,3,9,2,6]sum=0for ch in s:sum+=list[dic[ch]]print (sum)執行該程序段后,變量sum的值為( )A.23 B.25 C.31 D.3710.有如下Python程序:dic={″2″:″ABC″,″3″:″DEF″,″4″:″GHI″,″5″:″JKL″,″6″:″MNO″,″7″:″PQRS″,″8″:″TUV″,″9″:″WXYZ″}s=input()m=″″t=1for i in range(1,len(s)):if s[i]==s[i-1]:t+=1elif s[i]==″#″:m=m+dic[s[i-1]][t-1]t=1print(m)執行該程序后輸出“GET”,則輸入的內容可能是( )A.5#44#9# B.4#33#8#C.3#22#7# D.4#3#8#11.某化合物是由C、H和O三種元素組成,可用通式CiHjOk來表示,其中i,j,k是1到9之間的整數。某元素的質量分數計算方法=(該元素相對原子質量*該元素原子個數)/該化合物的相對分子質量。A=input('請輸入化合物:') #如輸入C2H4O2dic={'C':12,'H':1,'O':16}sum_total=0sum=dic[A[0]]*int(A[1])for i in ①________:sum_total+=②________print('C元素的質量分數:',sum/sum_total)劃線處應填入的代碼為( )A.range(2,len(A),2)dic[A[i]]*A[i+1]B.range(0,len(A),2)dic[A[i-1]]*int(A[i])C.range(0,len(A),1)dic[A[i]]*int(A[i+1])D.range(0,len(A),2)dic[A[i]]*int(A[i+1])12.有如下Python程序段:s=input(″請輸入:″)num={}for i in s:if i not in num:num[i]=0num[i]+=1flag=Falsefor i in s:if num[i]==1:print(i)flag=Truebreakif not flag:print(″err″)若輸入“go for it! just do it”運行該程序段,輸出顯示的結果為( )A.g B.oC.t D.err13.對于二維平面上的兩個點,設坐標分別為(x1,y1)和(x2,y2),當滿足x2>x1且y2>y1時,則稱這兩個點的y值隨x增加而單調上升。如圖中有編號為1~5的5個坐標點,其中1,2這2個點是單調上升,3,4,5這3個點單調上升,可得最長的連續單調上升序列的長度為3。以下Python程序用于計算最長連續單調上升序列的長度:dot={1:[1,2],2:[2,3],3:[3,2],4:[4,3],5:[5,4]}tmp=1;ans=0for i in range(2,6):if ①________:tmp+=1if tmp>ans: ans=tmpelse: tmp=1print(ans)代碼中空白處應依次填入語句是( )A.dot[i][0]>dot[i-1][0] and dot[i][1]>dot[i-1][1]B.dot[i][1]>dot[i-1][1] and dot[i][2]>dot[i-1][2]C.dot[i+1][0]>dot[i][0] and dot[i+1][1]>dot[i][1]D.dot[i+1][1]>dot[i][1] and dot[i+1][2]>dot[i][2]14.學考成績與學考等級折算方法如下:“A”等折算成10分,“B”等折算成9分,“C”等折算成7分,“D”等折算成4分?,F編寫一個能實現將學考等級折算成相應分數的Python程序,請回答下列問題:(1)若輸入″aaabbaac″,該程序________(填:能/不能)計算出相應的折算成績;(2)請在程序劃線處填上合適的代碼。level=input(″請輸入各門功課的學考等級:″)dic={″A″:10,″B″:9,″C″:7,″D″:4}score=0for i in range(len(level)):score=score+①________print(″你的學考成績折算為:″+②________)知識點四 控制結構1.某商場推出″每滿100減20,每滿200減50,可以累計上不封頂″的優惠促銷活動,用Python語言實現金額計算,設s為購買商品的原價,t為可優惠金額,下列選項正確的是( )A.t=s//200*50if s%200>=100:t=t+20B.t=s//100*20if s//200>0:t+=s//200*50C.if s>=200:t=s//200*50else:t=s//100*20D.if s>=100:t=t//100*20else:t=t//200*502.某停車場的收費標準為“30分鐘內(含)免費,3小時內(含)5元,超過3小時每增加1小時加收1元,停車不足1小時的按1小時計算。”已知停車時長為t分鐘,則下列Python程序段中不能正確計算停車費m的是( )A.if t<=30:m=0elif t<=3*60:m=5else:m=5+(t-3*60+59)//60B.if t>30:m=5if t>3*60:m=5+(t-3*60+59)//60else:m=0C.m=5if t>3*60:m=5+(t-3*60+59)//60elif t<=30:m=0D.m=0if t>3*60:m=5+(t-3*60+59)//60if t>30:m=53.有如下Python程序:a=[82,15,36,28,63,90,10,71]m=k=0for i in range(len(a)):n=(a[i]//10+a[i] % 10) % 10if n>m:m=nk=iprint(k,m)運行程序,輸出結果是( )A.0 10 B.5 90 C.2 9 D.4 94.有如下Python程序段:a=[0]*6b=[75,88,91,88,99,80]for i in range(5):for j in range(i+1,6):if b[j]>b[i]: a[i]+=1else: a[j]+=1print(a)該程序段運行后,列表a的值為( )A.[5,3,1,2,0,4] B.[5,2,1,3,0,4]C.[0,3,4,2,5,1] D.[6,4,2,3,1,5]5.有如下Python程序段:a=[1,5,9,2,6,8,3,4,7]n=0;flag=Truefor i in range(len(a)-1):if a[i]n+=1;flag=Falseelif a[i]>a[i+1] and flag==False:n-=1;flag=Trueprint(n)執行上述程序段后,輸出的值為( )A.2 B.0 C.-1 D.16.有如下Python程序段:s=input(″輸入字符串:″)n=len(s)i,j=0,n-1result=″″while i=n//2:if s[i]>s[j]:result+=s[i];j-=1elif s[i]result+=s[j];i+=1else:i+=1;j-=1print(result)執行該程序段,分別輸入下列選項中的字符串,輸出結果不為“555”的是( )A.″51234″ B.″12535″C.″54321″ D.″55123″7.某Python程序如下:s=input(″請輸入字符串:″)ans=″″a=[1,2,3]for i in range(len(s)):x=s[i]key=a[i%3]if ″A″<=s[i]<=″Z″: ans=ans+chr((ord(x)-65+key)%26+65)else: ans=ans+xprint(ans)執行該程序后,輸入″A1b2D3″輸出的結果為( )A.2b1BF B.B1b2F3 C.B3e3F6 D.6F3e3B8.有如下Python程序段:list=[2,1,3,4,5,7,12,14,26,37,63]c=0for i in range(2,11,2):if list[i-2]+list[i-1]==list[i]:c+=1print(c)該程序段運行結果為( )A.2 B.4 C.6 D.89.如果正整數n各個數位上的數字和是3的倍數,那么說明這個數能被3整除。利用Python編寫如下程序段:n=int(input(″請輸入一個正整數:″))s=0;t=0while n>0:if s%3==0:print(″能被 3 整除″)else:print(″不能被 3 整除″)方框中的代碼由以下三部分組成:①n=n//10 ②t=n%10?、踫=s+t下列選項中,代碼順序正確的是( )A.①②③ B.③②①C.③①② D.②③①專題4 Python語言基礎知識點一1.B [優先級最高為10**2=100,因此表達式為2023%400%100//2=23%100//2=23//2=11。]2.B [len(″python20221″)=11,15//2**3*3=3,因此11+3-4=10。]3.D [ord(″A″)%round(2.6)=2,B選項值為7,C選項值為6.2,D選項值為8。]4.D [B選項abs(int(-2.9))=2,C選項5**2>2**5即25>32,值為False。]5.D [A選項abs(-12.7)=12.7,因此值為False。B選項9<=8,值為False。C選項round(3.1415,3)=3.142。]6.B [D選項range(4)值為0,1,2,3,該序列中沒有4。]7.A [A選項max(″5″,″11″,″100″)=″5″,因此int(″5″)=5。]知識點二1.C [s[2]*2=″2″*2=″22″,s[-2::]=″py″。]2.C [a[5:]=″678″,b[2:1:-1]=″6″,表達式a[5:]+b[2:1:-1]*3的值″678″+″6″*3=″678666″。]3.A [n[3::3]指的是在n中索引位置3開始,每隔3個位置取一個字符。]4.D [cy[2:5]=[″張燈結彩″,″坐井觀天″,″風平浪靜″],cy[2:5][1]=″坐井觀天″。]知識點三1.D [遍歷列表lis,如果其中元素長度小于等于3,則累加最后一個元素,如果該元素是字典dic的鍵,則累加該鍵對應的值。]2.D [將dic[″蘋果″][1]原12.98修改為15.98,增加一個名為″葡萄″的鍵,值為[12.58,13.98]。]3.D [遍歷li數組,在dic字典中依次新建3個鍵″a″,″b″,″c″,其對應的值分別為10,20,30。]4.D [遍歷列表f,如果單詞存在于字典dic中,將其對應的值增加,否則新建一個鍵,值為1。dic的內容為{'b':2,'d':2,'D':1,'h':2,'c':1}。]5.D [統計字母出現的次數。]6.D [字典的訪問和修改只能通過"鍵”來訪問,字典沒有索引。]7.B [″數學″是″課程″鍵對應的第3個值,其時長存儲在″時長″鍵第3個,即索引第2個data[″時長″][2]。]8.C [″技術″是字符串類型,其值為97。]9.B [遍歷字符串s,將每個字母作為鍵,在字典中找到相對應的值,現在list列表對應位置值進行累加。]10.B [從“GET”在字典中的鍵來看,分別是4,3,8,“E”是值索引為1,因此將和變量t有關。]11.D [本題考查字典的應用。C、H和O三種元素在通式CiHjOk的0、2、4位置,排除選項AC。該元素相對原子質量*該元素原子個數,A[i]和A[i+1]分別表示原子質量和原子個數,他們對應的值在dic字典中。]12.A [本題考查字典的應用。第1個循環的功能是遍歷字符串s,統計字母的個數。第二個循環的功能是輸出第1個字母個數為1的鍵值,并結束循環,若沒有1個字母的情況,輸出″err″。]13.A [本題考查字典應用。每個數據點的坐標以鍵值對的形式存儲在字典中,變量i的初值為2,因此須與i-1進行比較。]14.(1)不能 (2)①dic[level[i]] ②str(score)解析 (1)字母″abc″在字典中找不到對應的鍵,取不出得分。(2)①遍歷level字符串,將字母level[i]作為鍵,在字典中查找相應的得分并進行累加。②輸出最后得分。知識點四1.A [表達式s//200表示滿200的數量,若s大于等于200,則優惠的金額為s//200*50。D選項不能判斷大于等于200的情況。]2.D [D選項是兩個選擇結構,將會依次執行兩個結構。]3.C [本題考查最值查找。n是一個數的個位數和十位數兩數之和,將和除10后的余數。最大值為3+6=9,其索引位置為2。]4.B [遍歷數組b前5個數,每個數將依次和他后面的數進行比較,若后面的數比他大,則在數組a對應索引加1,否則將對j對應索引加1,程序功能統計數組b中比他大的數的個數。]5.D [a[i]6.B [本題考查字符串的操作。該程序段的作用是將字符串s中左半部分與右半部分按照從大到小的順序交替排列,生成一個新的字符串result。輸入s字符串為12535時,輸出結果為55。]7.B [表達式chr((ord(x)-65+key)%26+65)的功能是將大寫字母x循環后移key個位置,而key只有3個值,不夠時可以循環使用。如果是數字或小寫字母直接相連。]8.B [本題考查數組元素的遍歷。從索引號為2的數組元素開始,統計當前元素是否是前面2個元素之和的個數。]9.D [表達式n%10的功能計算n的個位數,n//10的功能是去除個位數,因此①在②之后,③在②之后。] 展開更多...... 收起↑ 資源預覽 縮略圖、資源來源于二一教育資源庫