【正文】
函數(shù)。 int() 函數(shù)用于將一個(gè)字符串或數(shù)字轉(zhuǎn)換為整型;ord()函數(shù)它以一個(gè)字符(長(zhǎng)度為1的字符串)作為參數(shù),返回對(duì)應(yīng)的 ASCII 數(shù)值,或者 Uni解析:B【詳解】本題主要考查Python字符函數(shù)。 int() 函數(shù)用于將一個(gè)字符串或數(shù)字轉(zhuǎn)換為整型;ord()函數(shù)它以一個(gè)字符(長(zhǎng)度為1的字符串)作為參數(shù),返回對(duì)應(yīng)的 ASCII 數(shù)值,或者 Unicode 數(shù)值;chr()函數(shù)返回當(dāng)前整數(shù)對(duì)應(yīng)的 ASCII 字符; yolk是一個(gè)python工具,用于獲取有關(guān)已安裝的python包的信息,故本題選B選項(xiàng)。29.B【詳解】本題考查Python語(yǔ)句。選項(xiàng)A,X=Y=Z=1是合法的賦值語(yǔ)句;選項(xiàng)B,X=(Y=Z+1),X被賦值“Y=Z+1”,但這個(gè)所謂的“Y=Z+1”并不返回任何值,所以這是一個(gè)錯(cuò)誤的賦值語(yǔ)解析:B【詳解】本題考查Python語(yǔ)句。選項(xiàng)A,X=Y=Z=1是合法的賦值語(yǔ)句;選項(xiàng)B,X=(Y=Z+1),X被賦值“Y=Z+1”,但這個(gè)所謂的“Y=Z+1”并不返回任何值,所以這是一個(gè)錯(cuò)誤的賦值語(yǔ)句,這是非法的;選項(xiàng)C,X,Y=Y,X這是交換語(yǔ)句,合法;選項(xiàng)D,X+=Y相當(dāng)于X=X+Y,故本題選B。30.C【詳解】本題主要考查Python程序的執(zhí)行。a=0,b=4,滿足ba,執(zhí)行a=3*b=12,故程序運(yùn)行后,a的值是12,故本題選C選項(xiàng)。解析:C【詳解】本題主要考查Python程序的執(zhí)行。a=0,b=4,滿足ba,執(zhí)行a=3*b=12,故程序運(yùn)行后,a的值是12,故本題選C選項(xiàng)。二、程序填空31.day=int(s[8:])或day=int(s[2:]) 0,month1 isleap and month2 year%4==0 and year%100!=0 or year%400==0 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①2020年是閏年,2月是29天,故“20200520”這一天是這一年的第31+29+31+30+20=141天。②變量s是字符串型,下標(biāo)從0開始,此處是將輸入日期中的天取出來放到變量day中,可以使用切片操作:從左邊開始截取,也可以從右邊截取,故此處填day=int(s[8:])或day=int(s[2:])。③通過循環(huán)將前month1個(gè)月的天數(shù)加起來,故變量i的范圍是0到month1,故填0,month1。④變量isleap標(biāo)記是不是閏年,如果isleap值為真且month2,則sum需要遞增1,故填isleap and month2。⑤由題干閏年判斷條件,可知加框處應(yīng)改為year%4==0 and year%100!=0 or year%400==0。32.f = True isprime(k+2) k=k+1 或 k+=1 或 k=k+2 或 k+=2 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①isprime(x)用來判斷x是不是素?cái)?shù),通過用x整除2~int((x)),如果余數(shù)為0則表明該數(shù)不是素?cái)?shù),賦值f為假退出循環(huán),f的初值為True,故第一空填f = True。②若兩個(gè)素?cái)?shù)之差為 2,則該對(duì)素?cái)?shù)稱為雙胞胎數(shù),此處判斷相差為2的兩個(gè)數(shù)是不是素?cái)?shù),故第二空填isprime(k+2)。③素?cái)?shù)都是奇數(shù),此處需要更新k的值繼續(xù)循環(huán)判斷,可以將k的值遞增1或遞增2,故填k=k+1 或 k+=1 或 k=k+2 或 k+=2。33.D n=len(password) ch=password[i] x=n1+n2+n3 【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。①“12abcd5!”含有三類字符,則輸出結(jié)果為強(qiáng),選D選項(xiàng)。②此處取密碼的長(zhǎng)度,將其賦給變量n,len()是返回字符串的長(zhǎng)度,故填n=len(password)。③ch是取密碼的每一位進(jìn)行判斷,故此處填ch=password[i]。④當(dāng)出現(xiàn)數(shù)字時(shí)n1=1,當(dāng)出現(xiàn)字母時(shí)n2=1,當(dāng)出現(xiàn)其他字符時(shí)n3=1,x用來統(tǒng)計(jì)有幾類字符,故此處填x=n1+n2+n3。34.money*(1+rate) 將輸入的字符串年利率由百分制轉(zhuǎn)換為浮點(diǎn)數(shù) 循環(huán) 【詳解】本題主要考查Python程序設(shè)計(jì)。①round(x,n)函數(shù)是將x取n位,此處是計(jì)算當(dāng)前年份的收益,收益=本金+本金*年利率,故填money*(1+rate),并將結(jié)果取2位。②程序第2行的作用是將輸入的字符串年利率由百分制轉(zhuǎn)換為浮點(diǎn)數(shù),并賦值給變量 rate。③該程序主要是通過while實(shí)現(xiàn)循環(huán)結(jié)構(gòu)。35.max1 arr1[i] max1 【詳解】本題主要考查Python程序執(zhí)行與調(diào)試。變量max1用來保存數(shù)組的最大值,初始值賦值為最小值32768,第一空填max1,通過for循環(huán)依次比較當(dāng)數(shù)組元素大于max1時(shí),更新max1的值為該元素繼續(xù)循環(huán)直到與所有元素比較完,第二空填arr1[i],最后輸出最大值是max1,故第三空填max1。36.str = input(請(qǐng)輸入要轉(zhuǎn)換成大寫的數(shù)據(jù):)c=len(str)for i in range(0,c):print(str[i].upper(),end= )【詳解】本題主要考查程序設(shè)計(jì)。題干要求可使用Python程序設(shè)計(jì)實(shí)現(xiàn),通過upper函數(shù)可以將輸入數(shù)據(jù)轉(zhuǎn)換成大寫并輸出,具體代碼如下:str = input(請(qǐng)輸入要轉(zhuǎn)換成大寫的數(shù)據(jù):)c=len(str)for i in range(0,c):print(str[i].upper(),end= )37.l=[]for i in range(2000, 3201): if (i%7==0) and (i%5!=0): (str(i))print (39。,39。.join(l))【詳解】本題主要考查程序設(shè)計(jì)。由題干要求,可以使用Python程序設(shè)計(jì)語(yǔ)言實(shí)現(xiàn),可使用for循環(huán)以及列表,可以使用join函數(shù)按逗號(hào)分隔格式打印結(jié)果,join函數(shù)連接字符串?dāng)?shù)組,將字符串、元組、列表中的元素以指定的字符(分隔符)連接生成一個(gè)新的字符串,具體代碼如下:l=[]for i in range(2000, 3201): if (i%7==0) and (i%5!=0): (str(i))print (39。,39。.join(l))38.【詳解】本題主要考查Python程序的執(zhí)行與調(diào)試。運(yùn)行結(jié)果如下:39.champion 3 i 【詳解】本題主要考查Python程序的執(zhí)行。①champion是選手編號(hào)列表,此處是循環(huán)讀取選手編號(hào),使用for i in champion,故此處填champion。②四人中有一人說了假話,即3個(gè)人說真話,即當(dāng)cond=3時(shí),則表示找到了誰(shuí)是冠軍,故此處填3。③當(dāng)cond是3時(shí),i即為冠軍,故此處填i。40.34 chick_num 【詳解】本題主要考查Python程序的執(zhí)行。①公雞數(shù)量的范圍120,for cock_num in range(1,21)表示變量cock_num的范圍是120,故此處填21。②母雞的數(shù)量可能為133,同理,故此處填34。③此處是按順序使用print()函數(shù)輸出公雞數(shù)量、母雞數(shù)量、小雞數(shù)量,故此處填chick_num。