版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
程序設(shè)計(jì)及應(yīng)用(Python)學(xué)習(xí)通超星期末考試章節(jié)答案2024年下列有關(guān)python語(yǔ)言的說(shuō)法正確的是?
答案:python語(yǔ)言對(duì)大小寫敏感;python通過(guò)縮進(jìn)形式體現(xiàn)程序的結(jié)構(gòu);python擁有大量的第三方庫(kù)idle源程序窗口中,將選中所有語(yǔ)句向后增加縮進(jìn)可以使用以下哪個(gè)快捷鍵?
答案:ctrl+
]python自帶的最基本的編程工具是?
答案:IDLEpython3.x和python2.x完全兼容
答案:錯(cuò)誤以下關(guān)于Python語(yǔ)言中“縮進(jìn)”說(shuō)法正確的是
答案:縮進(jìn)在程序中一般長(zhǎng)度統(tǒng)一且強(qiáng)制用于表達(dá)程序的邏輯下列有關(guān)python語(yǔ)言的說(shuō)法錯(cuò)誤的是
答案:python采用編譯執(zhí)行方式Python源文件的后綴名是什么?
答案:py不能用來(lái)開發(fā)Python程序的是哪一個(gè)選項(xiàng)?
答案:word下列不屬于程序設(shè)計(jì)中高級(jí)語(yǔ)言的是哪一個(gè)選項(xiàng)?
答案:office以下關(guān)于Python的描述,正確的是:
答案:它是一種解釋執(zhí)行的語(yǔ)言Python編程工具idle有兩種使用窗口,分別是交互式命令行窗口和源程序(或源文件)窗口。
答案:對(duì)在Windows平臺(tái)上編寫的Python程序無(wú)法在Mac平臺(tái)運(yùn)行。
答案:錯(cuò)機(jī)器語(yǔ)言和匯編語(yǔ)言都屬于低級(jí)語(yǔ)言。
答案:對(duì)Python是一種開源免費(fèi)的高級(jí)編程語(yǔ)言。
答案:對(duì)通過(guò)float()函數(shù)可以把任意類型的數(shù)據(jù)轉(zhuǎn)換為一個(gè)浮點(diǎn)數(shù)
答案:錯(cuò)在數(shù)值運(yùn)算表達(dá)式中推薦使用小括號(hào)來(lái)更好的表達(dá)運(yùn)算的邏輯關(guān)系
答案:對(duì)兩個(gè)數(shù)進(jìn)行“//”運(yùn)算的結(jié)果一定是整數(shù)
答案:錯(cuò)a=eval(input('請(qǐng)輸入一個(gè)數(shù):'))
變量a一定指向一個(gè)整數(shù)對(duì)象
答案:錯(cuò)Python變量名可以包含的字符有:
答案:小寫字母(a~z);大寫字母(A~Z);數(shù)字(0~9);下劃線(_);漢字以下是變量合法命名的是?
答案:My_python1;mython1python中所有數(shù)值都可以準(zhǔn)確比較是否相等,這種說(shuō)法是否正確?
答案:錯(cuò)誤/star3/origin/da94387992754eccbab915d2809db2ab.png
答案:result=(total*rateMonth*(1+rateMonth)**terms)/((1+rateMonth)**terms-1)0b010表示的是?
答案:二進(jìn)制數(shù)請(qǐng)?jiān)趇dle交互式窗口中運(yùn)行:round(8.7)
,round(8.7,0),二者的結(jié)果是?
答案:(9,9.0)以下哪個(gè)表達(dá)式可以表示“n的平方根”?
答案:pow(n,0.5)以下哪個(gè)表達(dá)式可以表示“n除以2的余數(shù)”?
答案:n%2下列python語(yǔ)句錯(cuò)誤的是:
答案:a,b=10執(zhí)行print('hello')命令時(shí),輸出數(shù)據(jù)后會(huì)自動(dòng)換行,如果輸出后不想換行,可以將命令改為:??????print('hello',end='')
答案:正確下列哪個(gè)選項(xiàng)不是合法的python語(yǔ)句?
答案:a=eval(1+2)如果在一個(gè)輸出語(yǔ)句中同時(shí)輸出變量a、b、c的值,并且要求三個(gè)值之間用分號(hào)分隔,下列語(yǔ)句正確的是?
答案:print(a,b,c,sep=';')下面不屬于Python保留字的是?
答案:print以下哪個(gè)函數(shù)用于實(shí)現(xiàn)輸入功能?
答案:input()以下不是Python數(shù)據(jù)類型的是?
答案:實(shí)數(shù)在python語(yǔ)言中在屏幕上打印"HELLO"的正確表達(dá)是
答案:print("HELLO")3.[其它]輸入一個(gè)三位數(shù),判定該三位數(shù)是否是水仙花數(shù),水仙花數(shù)是指一個(gè)3位整數(shù),它的每位數(shù)字的3次冪之和等于其本身(例153),運(yùn)行2遍程序(分別輸入153,111),提交程序代碼、運(yùn)行結(jié)果截圖。正確答案:153是水仙花數(shù)
111不是水仙花數(shù)
答案:n=int(input('請(qǐng)輸入一個(gè)三位正整數(shù):'))
#獲取輸入result='不是'
#結(jié)果初始化bai=(n//100)%10shi=(n//10)%10ge=n%10ifn==pow(bai,3)+pow(shi,3)+pow(ge,3):
result='是'
#更新結(jié)果print(n,result,'水仙花數(shù)')在學(xué)習(xí)字符串部分后,可以運(yùn)用字符串處理(把整數(shù)當(dāng)作字符串,通過(guò)位置號(hào)獲取每位數(shù)并轉(zhuǎn)化為整數(shù)):n=input('請(qǐng)輸入一個(gè)三位正整數(shù):')iflen(n)!=3
ornotn.isdecimal():
print('輸入不合要求')else:
bai=int(n[0])
shi=
int(n[1])
ge=
int(n[2])
result='{}不是水仙花數(shù)'.format(n)
#結(jié)果初始化
ifint(n)==bai**3+shi**3+ge**3:
result='{}是水仙花數(shù)'.format(n)
#更新結(jié)果
print(result)2.[其它]編程實(shí)現(xiàn):輸入任意一個(gè)正整數(shù),如果該數(shù)為奇數(shù)(即該數(shù)除以2的余數(shù)等于1),則輸出其三次方的值,如果該數(shù)為偶數(shù),則輸出其平方根。運(yùn)行2遍(分別輸入3、20)程序,提交程序源碼和運(yùn)行結(jié)果截圖。注意:判斷兩個(gè)數(shù)是否相等用雙等號(hào)==
答案:n=int(input('請(qǐng)輸入一個(gè)正整數(shù):'))
#輸入result=0
#結(jié)果初始化為0ifn%2==1:
result=n**3else:
result=round(n**0.5,2)
#或round(pow(n,0.5),2))print(result)1.[其它]編程實(shí)現(xiàn):輸入圓的半徑,計(jì)算圓面積和周長(zhǎng)并輸出。π取3.1415并賦值給變量pi,運(yùn)行程序,半徑輸入4,提交源碼文件、運(yùn)行結(jié)果截圖。正確答案:圓面積為:50.264
周長(zhǎng)為:25.132
答案:pi=3.1415
radius=eval(input("請(qǐng)輸入圓半徑:"))area=
pi*radius*radiuscirc=2*pi*radiusprint('圓面積為:',area,'
周長(zhǎng)為:',circ)
#或者:print('圓面積為:{},周長(zhǎng)為:{}'.format(area,circ))s='#a\tb\tc#',以下說(shuō)法正確的是?(請(qǐng)先在idle里測(cè)試)
答案:s.strip('#a')的結(jié)果是'\tb\tc';執(zhí)行s.replace('#','$')后,s的值不變下列哪些表達(dá)式是正確的?
答案:print('{0}的絕對(duì)值為{0}'.format(65));print('{0}保留3位小數(shù):{0:.3f}
,保留2位小數(shù)的百分?jǐn)?shù)形式為:{0:.2%}'.format(0.34568));print('今年銷售增長(zhǎng)率為:{:.2%}'.format(23/1021))s='
123',以下哪些表達(dá)式的值是'
123
123'?
答案:s+s;s*2;2*ss='#abc#',下列哪些表達(dá)式的值是字符串'abc'?
答案:s.replace('#','');s.strip('#');s[1:-1]s="Python應(yīng)用基礎(chǔ)",下列表達(dá)式中哪一項(xiàng)與其余各項(xiàng)的結(jié)果是不相同的:
答案:s[-4:-5]哪個(gè)選項(xiàng)是下面代碼的執(zhí)行結(jié)果?s='PYTHON'print('{0:3}'.format(s))
答案:PYTHON下列哪個(gè)表達(dá)式可以獲得'A'的unicode編碼?
答案:ord('A')/star3/origin/6b5196e0210480c9b4469fed6f43bf40.png
答案:1010運(yùn)行語(yǔ)句s="{:>,.2f}".format(1087.65678)后,s的值是:
答案:"1,087.66"s='abc',
下列哪個(gè)表達(dá)式不能實(shí)現(xiàn)取字符串s的最后一個(gè)字符?
答案:s[len(s)]a=100,將a變?yōu)樽址?100’
可用以下哪個(gè)函數(shù)?
答案:a=str(a)s='
字符串
',取消s首尾空格可以用?
答案:s.strip()以下哪個(gè)函數(shù)可以獲得字符串的長(zhǎng)度?
答案:len()以下關(guān)于轉(zhuǎn)義字符描述錯(cuò)誤的是?
答案:len("\t")的結(jié)果是23.[其它]某人從銀行貸款10萬(wàn),還款期限10年,每月還款1200元,請(qǐng)編程實(shí)現(xiàn):計(jì)算該項(xiàng)貸款平均每年的利率(提示:10年支付的總利息占本金的比例平均到10年,不考慮復(fù)利),以保留2位小數(shù)的百分?jǐn)?shù)形式格式化輸出該利率。將源碼和運(yùn)行結(jié)果截圖提交。
答案:loan=100000pay=1200
year=10rate=0
#結(jié)果初始化,因下面無(wú)條件對(duì)rate賦值,該句可以省略payall=pay*12*year
#10年的總支出rate=(payall-loan)/loan/yearprint('該項(xiàng)貸款平均每年的利率為{:.2%}'.format(rate))
#或:print('該項(xiàng)貸款平均每年的利率為:',round(rate*100,2),'%')2.[其它]編寫程序,輸入一個(gè)正整數(shù),判斷其是否為回文數(shù)。回文數(shù)是指正序和逆序表示的數(shù)值相等。比如,12321的逆序數(shù)也是12321,12321是回文數(shù),12341的逆序數(shù)是14321,不是回文數(shù)。運(yùn)行程序兩次,分別輸入:98789
98765
,將源碼和運(yùn)行結(jié)果截圖提交。
答案:n=input('請(qǐng)輸入一個(gè)正整數(shù):')
#獲取輸入r='不是回文數(shù)'
#結(jié)果初始化if
notn.isdecimal():
#對(duì)初學(xué)者,也可以不考慮該步驟的判斷
print('輸入非正整數(shù)')else:
ifn==n[::-1]:
r='是回文數(shù)'
print(n,r)或:n=input('請(qǐng)輸入一個(gè)正整數(shù):')r=‘’
#結(jié)果初始化為空串if
notn.isdecimal():
print('輸入非正整數(shù)')else:
ifn==n[::-1]:
r='{}
是回文數(shù)'.format(n)
else:
r='{}
不是回文數(shù)'.format(n)
print(r)1.[其它]輸入任意一個(gè)0-9之間的正整數(shù),判定輸入的合法性(一位且是數(shù)字),合法則輸出其對(duì)應(yīng)的漢字?jǐn)?shù)字,例如:0--
零,1----一;不合法輸出提示。將源碼、運(yùn)行結(jié)果截圖提交。
答案:n=input('請(qǐng)輸入一個(gè)0-9之間的數(shù)字:')result=''iflen(n)==1andn.isdecimal():
#n.isdecimal也可以是:n.isdigit()
或
nin'0123456789'
n=int(n)
s='零一二三四五六七八九十'
result=s[n]
print(n,'對(duì)應(yīng)的漢字?jǐn)?shù)字:'
,result)else:
print('輸入不合法')程序的三種基本結(jié)構(gòu)是順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)
答案:對(duì)在循環(huán)中else子句所引導(dǎo)的代碼塊只有在循環(huán)正常結(jié)束(不是執(zhí)行了break)的情況下才會(huì)執(zhí)行。
答案:對(duì)while循環(huán)語(yǔ)句的循環(huán)體有可能一次都不會(huì)被執(zhí)行。
答案:對(duì)s='12345'print(s.isdigit())程序結(jié)果是:True
答案:對(duì)(4>5)or(3=='3')的值是False
答案:對(duì)分支結(jié)構(gòu)語(yǔ)句中,程序最多只能執(zhí)行其中一個(gè)分支中的語(yǔ)句。
答案:對(duì)分支結(jié)構(gòu)中,if子句下的語(yǔ)句和else子句下的代碼有可能會(huì)同時(shí)執(zhí)行
答案:錯(cuò)分支結(jié)構(gòu)可以向已經(jīng)執(zhí)行過(guò)的語(yǔ)句跳轉(zhuǎn)
答案:錯(cuò)下列哪些表達(dá)式的結(jié)果為True?
答案:5<=len('12345678')<=10;not
'';int('12345678'[-1])
%
2==0下面哪個(gè)程序條件可以表達(dá)下面的含義:“x和y均不為0,且兩者要么同時(shí)為正,要么同時(shí)為負(fù)”
答案:(x<0andy<0)or(x>0andy>0);(x*y)>0下列哪個(gè)條件語(yǔ)句可以表示:n能被3整除并且n不能被6整除,或者n能被9整除
答案:n%3==0andn%6!=0orn%9==0下列哪個(gè)表達(dá)式是正確的?
答案:“{},你好”.format("女士"ifsexy=="female"else"先生")python通過(guò)()來(lái)判斷操作是否在分支結(jié)構(gòu)中。
答案:縮進(jìn)以下哪一個(gè)條件表達(dá)式是不合法的?
答案:x=ya=3,下面條件表達(dá)式的結(jié)果是:(a<5anda>1)ora%2==0
答案:True下面條件表達(dá)式的結(jié)果是:Falseand(FalseorTrue)
答案:False下面條件表達(dá)式的結(jié)果是:FalseandFalseorTrue
答案:True3.[其它]編程實(shí)現(xiàn):任意輸入一個(gè)字符串,計(jì)算其中包含的數(shù)字的個(gè)數(shù)。
答案:s=input("請(qǐng)輸入一個(gè)字符串:")num_count=0forcins:
ifc.isdecimal():
#也可以用c.isdigit()方法
num_count+=1print('{}中包含{}個(gè)數(shù)字'.format(s,num_count))考察要點(diǎn):字符串的遍歷、構(gòu)成特點(diǎn)判斷2.[其它]編程輸出數(shù)字中含7,而且能被7整除的所有的三位數(shù)(100-999),數(shù)字在同一行顯示(輸出后不換行,附加空格)。(注意數(shù)據(jù)類型與運(yùn)算符的匹配)
答案:forninrange(100,1000):
#注意range函數(shù)中,1000不在范圍內(nèi)
if
n%7==0and"7"
in
str(n):
#注意包含是字符串運(yùn)算
print(n,end="
")
#輸出不換行1.[其它]某超市搞五一促銷活動(dòng):購(gòu)物達(dá)300元(含)-500元,85折優(yōu)惠;
達(dá)500元(含)-800元,7折優(yōu)惠;
800元(含)及以上,6折優(yōu)惠編程實(shí)現(xiàn):輸入購(gòu)物額,計(jì)算并輸出優(yōu)惠后的付款額
答案:value=eval(input("請(qǐng)輸入購(gòu)物額:"))money=value
#付款額初始化為購(gòu)物額if
value>=800:
#最高優(yōu)惠檔
money=value*0.6
elifvalue>=500
#隱含條件value<800
money=value*0.7elifvalue>=300:
#隱含條件value<500
money=value*0.85print('付款額:',money)或者:value=eval(input("請(qǐng)輸入購(gòu)物額:"))money=value
#付款額初始化為購(gòu)物額if
value<300:
#無(wú)優(yōu)惠
pass
#什么也不做elifvalue<500:
#隱含條件value>=300
money=value*0.85elifvalue<800:
#隱含條件value>=500
money=value*0.7else:
#隱含條件value>=8
money=value*0.6print('付款額:',money)注意要點(diǎn):
1.
多分枝的后一個(gè)條件隱含前面的條件不成立,條件的書寫順序很重要;
2.多個(gè)條件的表達(dá)順序:閾值從小到大,應(yīng)該用<,從大到小,應(yīng)該用>3.[其它]完數(shù)指一個(gè)數(shù)恰好等于它的所有因子(不包括其本身)之和。例:6的因子是1,2,3,而6=1+2+3,因此6是完數(shù)編程輸出1000之內(nèi)的所有完數(shù)。
答案:forninrange(1,1000):
#逐一取1000以內(nèi)的數(shù)
#循環(huán)體為判定當(dāng)前n值是否為完數(shù)
s=0
#n的因子和初始為0
foriinrange(1,n):
#逐一測(cè)試可能的因子(內(nèi)層循環(huán))
ifn%i==0:
#當(dāng)前i值是當(dāng)前n值的因子
s+=i
#累加因子
ifs==n:
#內(nèi)層循環(huán)結(jié)束后,比較因子和與n本身,相等則n為完數(shù),輸出n
print(n,end='')2.[其它]用戶輸入一個(gè)密碼,要求密碼至少8位、只能包含字母、漢字、數(shù)字、下劃線,并且只能以下劃線開頭,請(qǐng)編程實(shí)現(xiàn)密碼輸入,并判定其是否合法。提示:可以用
字符串.isalnum()方法測(cè)試輸入:abc123
(不合法)_Abc_123(合法)_abc*123
(不合法)
答案:方案一:整個(gè)密碼整體判斷初始化為不合法,如果密碼滿足長(zhǎng)度條件,并且以下劃線開頭,則將密碼中的所有下劃線去除,剩下的內(nèi)容再用.isalnum()判定是否只包含字母、漢字、數(shù)字,是則合法passw=input('請(qǐng)輸入密碼:')result=
'密碼不合法'iflen(passw)
>=8
and
passw[0]=='_':
#密碼滿足長(zhǎng)度條件,并且以下劃線開頭
passw=passw.replace('_','a')
#所有下劃線以合法字符‘a(chǎn)’代替(‘a(chǎn)’可以是任意合法字符),因8個(gè)下劃線合法,故不能用空串代替
ifpassw.isalnum():
#除下劃線外的passw中只包含數(shù)字、字符、漢字
result='密碼合法'
print(result)
或者上述方案中初始化為空串或合法或不合法,如果滿足條件則為合法,否則都是不合法passw=input('請(qǐng)輸入密碼:')result=
''
#初始化為空iflen(passw)
<8
or
passw[0]!='_':
#密碼不滿足長(zhǎng)度條件,或者不以下劃線開頭
result='密碼不合法!'else:
passw=passw.replace('_','a')
#去除所有下劃線
ifpassw.isalnum():
#除下劃線外的passw中只包含數(shù)字、字符、漢字
result='密碼合法'
else:
result='密碼不合法!'print(result)
方案二:采用循環(huán)判斷每個(gè)字符的方案:思路1:首先對(duì)密碼長(zhǎng)度和是否以下劃線開頭進(jìn)行判斷,如果滿足條件,則對(duì)合法字符計(jì)數(shù),如果合法字符個(gè)數(shù)等于原密碼字符個(gè)數(shù)則輸入合法,否則不合法。passw=input('請(qǐng)輸入密碼:')result='密碼不合法!'
#或空串
或合法
iflen(passw)
>=8
and
passw[0]=='_':
correct=0
#合法字符個(gè)數(shù)初始為0
forchinpassw:
ifch=='_'orch.isalnum():
#ch.isalnum()判斷ch是否為字母或漢字或數(shù)字
(合法字符)
correct+=1
#合法字符個(gè)數(shù)+1
#循環(huán)結(jié)束
ifcorrect==len(passw):
#如果合法字符個(gè)數(shù)等于原密碼字符個(gè)數(shù)則輸入合法
result='密碼合法!'
else:
result='密碼不合法!'
#或pass,也可以沒(méi)有else子句print(result)思路2:結(jié)果初始化為合法;如果密碼不滿足長(zhǎng)度條件或者不以下劃線開頭,則肯定不合法,否則循環(huán)測(cè)試每個(gè)字符的合法性,只要一個(gè)字符不合法則確定密碼不合法,中斷循環(huán)passw=input('請(qǐng)輸入密碼:')result='合法'iflen(passw)
<8
orpassw[0]!='_':
result='密碼不合法!'else:
forchinpassw:
ifnot(ch=='_'orch.isalnum()):#只要一個(gè)字符不合法則可以確定輸入不合法
result='密碼不合法!'
breakprint(result)注意:合法密碼需要同時(shí)滿足三方面的條件(長(zhǎng)度、以下劃線開頭、只能包含特定的字符)
字符串.is系列函數(shù)
只有字符串中的所有字符(不是某些字符)滿足函數(shù)功能對(duì)應(yīng)的條件才返回True。1.[其它]用戶輸入一個(gè)正整數(shù),如果該正整數(shù)為偶數(shù),則計(jì)算小于等于該正整數(shù)的所有偶數(shù)之和,如果該正整數(shù)為奇數(shù),則計(jì)算小于等于該正整數(shù)的所有奇數(shù)之乘積。
答案:n=int(input('請(qǐng)輸入一個(gè)正整數(shù):'))ifn%2==0:
#偶數(shù)
result=0
#結(jié)果初始化為0
foriinrange(2,n+1,2):
result+=i
#累加else:
result=1
#奇數(shù)時(shí)結(jié)果初始化為1
foriinrange(1,n+1,2):
result*=iprint(result)注意:不同情況結(jié)果初始化的合理值不同5
if
5>6
else
(6
if
3>2
else
5)
上述表達(dá)式的結(jié)果為5
答案:錯(cuò)字符串對(duì)象的format方法的結(jié)果一定是字符串類型的對(duì)象
答案:對(duì)用whileTrue:實(shí)現(xiàn)的永真循環(huán)對(duì)程序運(yùn)行沒(méi)有任何意義。
答案:錯(cuò)if語(yǔ)句中條件部分可以使用任何能夠產(chǎn)生TrueFa或lse的語(yǔ)句和函數(shù)。
答案:對(duì)執(zhí)行s=
'helloworld'
語(yǔ)句后,foriinrange(len(s)):
print(s[i])與forcins:
print(c)功能和結(jié)果是一樣的
答案:對(duì)forsin"Hello":
ifs=="l":
break
print(s,end="")
程序的運(yùn)行結(jié)果是顯示He
答案:對(duì)for
s
in
"Hello":
if
s=="l":
continue
print(s,end="")
程序的結(jié)果是顯示He
答案:錯(cuò)以下關(guān)于Python中的“縮進(jìn)”說(shuō)法錯(cuò)誤的是哪項(xiàng)?
答案:縮進(jìn)只是為了對(duì)齊代碼,以提高代碼的可讀性下列程序的輸出結(jié)果是________:n=23foriinrange(3,10):
ifn%i==0:
print('break')
breakelse:
print('end')
答案:endk=0
s="qqqtqqq"
foriinrange(len(s)):
ifs[i]=='q':
k+=1
continue
else:
k+=2
break
print(k)
上面的程序輸出結(jié)果是:
答案:5x=10
c=0
whileTrue:
x=x-1
ifx==1:
break
c+=1
print(c)上面程序的輸出結(jié)果是:
答案:8forsin"PYTHON":
print(s,end="")
else:
print("正常退出")
上面的程序輸出結(jié)果是:
答案:PYTHON正常退出k=10
whilek>1:
print(k)
k=k/2
上面的程序輸出多少個(gè)數(shù)?
答案:4s,t=0,0
foriinrange(1,4):
t=t+i
s=s+t
print(s)上面程序的輸出結(jié)果是()
答案:10forvarin_____:
print(var)
下面哪個(gè)選項(xiàng)不符合上述程序空白處的語(yǔ)法要求?
答案:{1;2;3;4;5}哪個(gè)選項(xiàng)關(guān)于循環(huán)的描述是錯(cuò)誤的???????????????????????????????????????????????????????????????????????????????????????????????
答案:死循環(huán)無(wú)法退出,沒(méi)有任何作用20/4的結(jié)果為5
答案:錯(cuò)input()函數(shù)的返回值可以是字符串,也可以是數(shù)值。
答案:錯(cuò)a.var是合法的變量名
答案:錯(cuò)字符串對(duì)象創(chuàng)立后,除了可以通過(guò)del命令刪除該對(duì)象外,該對(duì)象不會(huì)發(fā)生任何改變
答案:對(duì)'a'+'b'*2*2的結(jié)果是'abbabb'
答案:錯(cuò)默認(rèn)狀態(tài)下,不同print()語(yǔ)句輸出的結(jié)果將顯示在不同行上(即以換行符進(jìn)行分隔)
答案:對(duì)執(zhí)行importmath語(yǔ)句后,下列哪些表達(dá)式可以表示數(shù)值n的平方根?
答案:math.sqrt(n)
;n**0.5;pow(n,0.5)下列導(dǎo)入模塊或模塊中函數(shù)的方式,正確的是(其中math是模塊,sqrt和exp是函數(shù)):
答案:importmath;importmathasmt;frommathimportsqrt,exps="股票:{:0>6}".format(108)s的結(jié)果是?
答案:"股票:000108"以下哪項(xiàng)導(dǎo)入模塊的方式錯(cuò)誤的?
答案:importsqrtfrommathPython標(biāo)準(zhǔn)庫(kù)random中的___函數(shù)的作用是從序列中隨機(jī)選擇多個(gè)樣本?
答案:sample執(zhí)行importrandom語(yǔ)句后,從字符串s中任意取一個(gè)字符的函數(shù)是:
答案:random.choice(s)
執(zhí)行from
randomimportrandint語(yǔ)句后,可以通過(guò)n=
_______將變量n指向一個(gè)1到10之間的隨機(jī)整數(shù)。
答案:randint(1,10)
執(zhí)行import
random語(yǔ)句后,可以通過(guò)n=
_______將變量n指向一個(gè)1到10之間的隨機(jī)整數(shù)。
答案:random.randint(1,10)
random庫(kù)中將列表中的元素隨機(jī)排列,并改變?cè)斜淼暮瘮?shù)名是:
答案:shuffleimportrandoma=random.random()對(duì)a的值,下列說(shuō)法正確的是()
答案:可能是0,不可能是1以下哪種類型的函數(shù)不需要導(dǎo)入就可以直接調(diào)用?
答案:內(nèi)置函數(shù)Python安裝第三方庫(kù)的命令是____。
答案:pip;pip3;pipinstall;pip3install隨機(jī)產(chǎn)生密碼,有效密碼要求同時(shí)滿足以下條件:(1)長(zhǎng)度為8位(2)
僅包含大小寫字母、數(shù)字、下劃線,允許有重復(fù)字符(3)不能以數(shù)字開頭編程實(shí)現(xiàn):得到10個(gè)有效密碼并輸出
答案:fromrandomimportchoice#以下產(chǎn)生字母和下劃線構(gòu)成的字符串s=''#產(chǎn)生26個(gè)大寫字符foriinrange(ord('A'),ord('Z')+1):
s=s+chr(i)s=s+s.lower()+'_'
#大小寫字母和下劃線構(gòu)成的字符串digit='0123456789'
#數(shù)字構(gòu)成的字符串#以下產(chǎn)生10個(gè)有效密碼'''思路一:循環(huán)10次,每次產(chǎn)生一個(gè)合法字符:(1)直接從非數(shù)字s中隨機(jī)獲取一個(gè)字符作為密碼的第一個(gè)字符(2)循環(huán)7次,每次從s+digit中隨機(jī)獲取1個(gè)字符加入密碼字符串(3)輸出密碼'''foriinrange(10):
#循環(huán)10次產(chǎn)生10個(gè)合法密碼
#以下產(chǎn)生一個(gè)合法密碼
passw=choice(s)
#密碼初始化為隨機(jī)一個(gè)字母或下劃線
forjinrange(7):
#循環(huán)7次隨機(jī)產(chǎn)生7個(gè)合法字符并加入密碼
passw+=choice(s+digit)
print(passw)'''思路二:產(chǎn)生不確定個(gè)數(shù)的8位密碼,對(duì)滿足條件的密碼計(jì)數(shù),直到滿足條件的密碼個(gè)數(shù)達(dá)到10個(gè)為止1.有效密碼個(gè)數(shù)初始化為02.while
有效密碼個(gè)數(shù)小于10個(gè)執(zhí)行以下循環(huán)體:(1)密碼初始化為空串(2)循環(huán)8次,每次從s+digit字符串中隨機(jī)獲取1個(gè)字符加入密碼字符串(3)判定該密碼字符串是否以數(shù)字開頭,如果不以數(shù)字開頭,則輸出該密碼,并對(duì)密碼個(gè)數(shù)加1,否則繼續(xù)下一次循環(huán),繼續(xù)產(chǎn)生密碼'''pcount=0
#密碼計(jì)數(shù)s=s+digit
#s為可能構(gòu)成密碼的字符whilepcount<10:
passw=''
#密碼初始化為空
foriinrange(8):
#循環(huán)8次隨機(jī)產(chǎn)生1個(gè)字符并加入密碼
passw+=choice(s)
ifnotpassw[0].isdecimal():
#如果密碼不以數(shù)字開頭,輸出該密碼,有效個(gè)數(shù)加1
print(passw)
pcount+=1微信零錢通的年化利率是2.08%,每天結(jié)息且自動(dòng)將利息轉(zhuǎn)存(即復(fù)利),小明在年初存入零錢通1000元,以后每30天存入200元,一年后小明零錢通共有多少錢(結(jié)果保留2位小數(shù))?提示:第0天為初始狀態(tài)1000,從第一天開始循環(huán)計(jì)算:每天零錢通的錢數(shù)=昨天的錢數(shù)+一天的利息,如果當(dāng)天是30的倍數(shù)再加200,第365天的錢數(shù)就是最終結(jié)果。正確結(jié)果:3444.42元
答案:money_all=1000
#結(jié)果初始化為初始本金rate_day=0.0208/365
#日利率money_30=200
#中間每次存入200forday
inrange(1,366):
money_all=money_all
*(1+rate_day)
#計(jì)算每天的本息和
ifday%30==0:
#是否追加存入
money_all+=money_30
#追加存入print(round(money_all,2),'元')ls=[1,2,3],那么執(zhí)行語(yǔ)句ls.pop(1)之后,ls的值為[2,3]
答案:錯(cuò)[1,2]*2的執(zhí)行結(jié)果為[2,4]
答案:錯(cuò)ls=['10','2','5'],則表達(dá)式max(ls)的值為'5'
答案:對(duì)ls=[1,2,3,4]a,b,c,d=ls上述語(yǔ)句是正確的
答案:對(duì)由于列表可以包含多個(gè)表項(xiàng)(元素),因此兩個(gè)列表不能進(jìn)行大小比較。
答案:錯(cuò)由于元組是不可變數(shù)據(jù)類型,因此不能使用加號(hào)連接兩個(gè)元組。
答案:錯(cuò)s=[1,2,3,4],執(zhí)行以下代碼后,s1中的表項(xiàng)(即元素)與s中不同的是:
答案:s1=s.copy()s1[1]=10;s1=s[:]s1[1]=10列表ls=[1,2,3,4,5],以下可以實(shí)現(xiàn)刪除列表ls中值為2、3的兩個(gè)元素的有:
答案:dels[1:3];s[1:3]=[]執(zhí)行語(yǔ)句:ls=list()下列說(shuō)法不正確的是:
答案:執(zhí)行l(wèi)s.extend('python')后,ls包含一個(gè)元素依次執(zhí)行下列語(yǔ)句:ls=list('python')ls1=ls.copy()ls2=lsls2.append('abc')執(zhí)行后,下列說(shuō)法不正確的是?
答案:ls和ls1的值相同s=['a','b','c'],以下四個(gè)選項(xiàng)對(duì)應(yīng)的操作,哪個(gè)選項(xiàng)與其他三個(gè)選項(xiàng)得到的s的長(zhǎng)度不同:
答案:s.extend('def')以下哪個(gè)方法不可以刪除列表中的元素?
答案:index()編寫程序,用戶一次性輸入由分號(hào)分隔的若干個(gè)整數(shù),計(jì)算這些數(shù)的平均數(shù),輸出平均數(shù)、有多少個(gè)數(shù)大于平均數(shù),多少個(gè)數(shù)小于平均數(shù)。運(yùn)行程序,輸入:1;2;3;4;5;6;7;8;9
思路:1.獲取輸入(字符串類型)2.初始化2個(gè)計(jì)數(shù)變量為03.分割字符串得到各個(gè)數(shù)(字符串類型)構(gòu)成的列表4.按位置(索引)遍歷列表,將每個(gè)元素修改為對(duì)應(yīng)的整數(shù)5.計(jì)算平均值6.按元素遍歷列表:
比較元素值和平均值的關(guān)系,根據(jù)不同情況將對(duì)應(yīng)計(jì)數(shù)變量加17.輸出平均值和2個(gè)計(jì)數(shù)變量值
答案:someInt=input("請(qǐng)輸入一系列分號(hào)分隔的整數(shù):")aboveAvg=0belowAvg=0ls=someInt.split(";")
#得到存放各數(shù)的列表,元素為字符串for
i
inrange(len(ls)):
ls[i]=int(ls[i])avgn=sum(ls)/len(ls)
#求平均,必須在循環(huán)結(jié)束后進(jìn)行。#以下進(jìn)行計(jì)數(shù)forninls:
if
n>avgn:
aboveAvg+=1
elifnavgn:
aboveAvg+=1
elifn編程實(shí)現(xiàn):逐個(gè)輸入若干學(xué)生的成績(jī),保存在列表中,輸入0則結(jié)束輸入,輸出該列表及最高分、最低分、平均分(保留2位小數(shù))思路:1.定義一個(gè)空列表2.永真循環(huán):
(1)
輸入
(2)判定是否為0,是則跳出循環(huán),否則,將輸入加入列表3.輸出列表4.計(jì)算最高、最低、總和/個(gè)數(shù),并輸出
答案:ls=[]whileTrue:
score=eval(input('請(qǐng)輸入一個(gè)學(xué)生的成績(jī),輸入0則結(jié)束:'))
if
score==
0:
break
ls.append(score)print(ls)print('最高分:{},
最低分:{}
,平均分:{:.2f}'.format(max(ls),min(ls),sum(ls)/len(ls)))ls=[1,2,3,4,2,2,1]ls.remove(2)可以刪除ls中所有的值為2的元素
答案:錯(cuò)ls=[['a',80,90],['b',70,80],['c',70,90]]ls1=[e[0]foreinls]ls1的結(jié)果是['a','b','c']
答案:對(duì)x=[1,2,3]執(zhí)行語(yǔ)句
y
=
x[:]后,對(duì)y所做的任何操作都會(huì)同樣作用到x上
答案:錯(cuò)a,b='swufe','a'eval(b)的值為'a'
答案:錯(cuò)n=0.256print('{:.2%}'.format(n))輸出結(jié)果為:25.60%
答案:對(duì)[int(c)**2forcin'123'ifint(c)%2==0]的結(jié)果是[4]
答案:對(duì)ls是一個(gè)列表,ls.append([1,2])和ls.extend([1,2])的結(jié)果是一樣的
答案:錯(cuò)ls=['python','24','123']ls.sort(key=len)執(zhí)行上述語(yǔ)句后,ls的值為['24','123','python']
答案:對(duì)ls1=[1,2,2]ls2=[3,3,4]ls1=ls1+ls2和ls1.extend(ls2)的結(jié)果是一樣的
答案:對(duì)random庫(kù)中randint(a,b)函數(shù)生成一個(gè)[a,b]之間的隨機(jī)整數(shù)。
答案:對(duì)執(zhí)行下面哪個(gè)語(yǔ)句后,變量a的值一定不是數(shù)值類型?
答案:a=
input('請(qǐng)輸入:')下列語(yǔ)句錯(cuò)誤的是:
答案:if3in‘103’:
print('right')ls=[8,2,1,4,5],下列語(yǔ)句不會(huì)改變ls的是?
答案:ls.copy()
運(yùn)?下?的代碼:foriinrange(5):
forjinrange(i):
print('pass')pass共輸出了多少次?
答案:10下列表示字符"D"的表達(dá)式是:
答案:chr(ord("A")+3)下列程序的功能是:
t=1
s=0
foriinrange(1,11):
t=t*i
s=s+t
print(s)
答案:計(jì)算1!+2!+...+10!
并輸出n=12count=0while
n%2==0:
n=n//2
count+=1運(yùn)行上述程序后,count的值為?
答案:2運(yùn)?下?的語(yǔ)句:foriinrange(1,10,3):
print(i)共輸出了幾個(gè)數(shù)?
答案:3a=100,將a變?yōu)樽址?100'可?以下哪個(gè)函數(shù)?
答案:str(a)print('hello','python',end='!')的結(jié)果是
答案:hello
python!
for
xin
........,
以下哪個(gè)選項(xiàng)不能出現(xiàn)在in后?
答案:100ls=['python',[1,2,3],('4','5')]以下說(shuō)法錯(cuò)誤的是()
答案:sum(int(ls[-1]))的值為9下?程序的功能是:
s='abcde34567dd'
str1=''
forcins:
ifc.isdigit():
str1=str1+c
print(str1)
答案:找出字符串s中的所有數(shù)字并輸出4.[其它]隨機(jī)生成一個(gè)由小寫字母、逗號(hào)構(gòu)成的長(zhǎng)度為50的字符串,輸出該字符串,然后根據(jù)逗號(hào)分隔字符串,輸出分割后的最長(zhǎng)和最短字符串(提示:按字符串長(zhǎng)度排序)。
例如,假定隨機(jī)生成的是:babb,e,ebac,ecced,beccbd,bacbcaabccbedabeabebaded輸出格式為:最長(zhǎng)的字符串是:bacbcaabccbedabeabebaded最短的字符串是:e要求先以以下格式導(dǎo)入函數(shù)并設(shè)置種子:fromrandomimportchoice,seedseed(12)將程序和結(jié)果截圖提交,并以附件形式上傳程序文件
答案:fromrandomimportchoice,seedseed(12)#生成抽取字符的合法字符串,也可以直接賦值語(yǔ)句得到charschars=''foriinrange(ord('a'),ord('z')+1):
chars+=chr(i)chars+=','#隨機(jī)生成50個(gè)合法字符構(gòu)成的字符串s=''foriinrange(50):
s+=choice(chars)#上述3行也可以用列表推導(dǎo)式:
s=''.join([
choice(chars)foriinrange(50)
])print(s)#按逗號(hào)分隔字符串為列表ls=s.split(',')
#列表按照字符串長(zhǎng)度排序ls.sort(key=len)print('最長(zhǎng)的字符串是:{}\n最短的字符串是:{}'.format(ls[-1],ls[0]))3.[其它]輸入若干活動(dòng)的參與信息:每次輸入一個(gè)活動(dòng)名稱和參與人數(shù)(用逗號(hào)隔開),直接回車則結(jié)束輸入;將每次活動(dòng)的名稱和參與人數(shù)構(gòu)成一個(gè)小列表[活動(dòng)名稱,參與人數(shù)],該小列表作為一個(gè)元素保存在列表ls中。輸出ls;計(jì)算并輸出所有活動(dòng)參與的總?cè)藬?shù);將程序和結(jié)果截圖提交,并以附件形式上傳程序文件
答案:ls=[]
#初始化列表sumrs=0
#人數(shù)合計(jì)初始化whileTrue:
info=input('請(qǐng)輸入活動(dòng)名稱和參與人數(shù),中間用逗號(hào)隔開:')
iflen(info)==0:
#上面輸入時(shí)直接回車
break
name,rs=info.split(',')
ls.append([name,int(rs)])
#小列表作為元素加入列表ls
sumrs+=int(rs)
#累加人數(shù)print(ls)print(sumrs)#說(shuō)明:不一定邊輸入邊計(jì)算,也可以先得到列表,再遍歷列表計(jì)算總?cè)藬?shù)#或者ls=[]
#初始化列表whileTrue:
info=input('請(qǐng)輸入活動(dòng)名稱和參與人數(shù),中間用逗號(hào)隔開:')
iflen(info)==0:
#上面輸入時(shí)直接回車
break
name,rs=info.split(',')
ls.append([name,int(rs)])
#小列表作為元素加入列表lsprint(ls)rsls=[e[-1]foreinls]
#用列表推導(dǎo)式得到參與人數(shù)列表sumrs=sum(rsls)print(sumrs)1.[其它]輸入一個(gè)字符串,如果該字符串中包含下滑線"-",則將字符串去掉第一位字符后的剩余部分重復(fù)5次形成新串;否則將字符串的最后一位字符替換成下滑線"-"形成新串。輸出上述處理得到的新串。運(yùn)行程序2遍,分別輸入:ab_cde
abcdef將程序和結(jié)果截圖提交,并以附件形式上傳程序文件
答案:word=input('輸入一個(gè)單詞:')if'_'inword:
new_word=word[1:]*5else:
new_word=word[:-1]+'_'print(new_word)用戶輸入一串空格分隔的數(shù)字(例如:10
20
10
20
30
40),將其中的數(shù)字分隔開(用
字符串.split()
)保存在列表中(例如[10,20,10,20,30,40])
,輸出期中6的倍數(shù)。
答案:nstr=input('輸入一串空格分隔的數(shù)字:')nstrls=nstr.split()nls=[int(e)foreinnstrls]
#將nstrls的各元素轉(zhuǎn)化為整數(shù)形成新列表,或用nls=list(map(int,nstrls))foreinnls:
ife%6==0:
print(e)上面紅色部分也可以替換為:foreinnstrls:
ifint(e)%6==0:
print(e)stu1=['zhang',90]stu2=['wang',80]stu3=['li',78,69]ls=[stu1,stu2,stu3]則ls[-1][0:1]的值為‘li'
答案:錯(cuò)集合的元素允許重復(fù),集合是可變數(shù)據(jù)類型,可以改變它的某個(gè)元素
答案:錯(cuò)python源程序即可以編譯執(zhí)行,也可以解釋執(zhí)行
答案:錯(cuò)(5)*3的結(jié)果是(5,5,5)
答案:錯(cuò)continue和break語(yǔ)句只能出現(xiàn)在循環(huán)體中,continue表示結(jié)束本次循環(huán),回到本層循環(huán)開頭,break表示結(jié)束所有循環(huán)
答案:錯(cuò)ls=[1,2,3],ls.pop()和ls.pop(0)的功能是一樣的
答案:錯(cuò)兩個(gè)整數(shù)進(jìn)行+、-、*、/、//運(yùn)算的結(jié)果一定是整數(shù)
答案:錯(cuò)random庫(kù)中randint(a,b)的功能是產(chǎn)生a到b之間(包含a,不包含b)的隨機(jī)整數(shù)
答案:錯(cuò)ls=[2,3,2,3],則表達(dá)式[ls.index(n)forninlsifn%2]的值為[1,3]
答案:錯(cuò)else子句只能出現(xiàn)在分支結(jié)構(gòu)中
答案:錯(cuò)s=65r=''ifs<60:
r='fail'elif
s<85:
r='liang'elif
s<75:
r='jige'else:
r='youxiu'執(zhí)行以上語(yǔ)句后,r的值為'jige'
答案:錯(cuò)s=list('123454321')count=0foriinrange(len(s)):
ifint(s[i])<1:
count+=1
else:
break執(zhí)行上述語(yǔ)句后,count的值為2
答案:錯(cuò)forminrange(1,5):
ifm%3==0:
continue
else:
print(m,end=',')程序的運(yùn)行結(jié)果是:1,2,3,4,
答案:錯(cuò)ls=[['金融','1001',90],['會(huì)計(jì)','2001',80],['計(jì)科','1003',91],['金融','1005',85]]
列表元素的含義為:[專業(yè),學(xué)號(hào),成績(jī)]ls.sort()可以實(shí)現(xiàn)對(duì)ls各元素按照專業(yè)升序排列,專業(yè)相同時(shí)按照學(xué)號(hào)升序排列
答案:對(duì)移除集合中的元素時(shí),如果元素不存在,也不會(huì)報(bào)錯(cuò)的方法是remove()
答案:錯(cuò){1,2,3}>{3,2}的結(jié)果為False
答案:錯(cuò){1,2,3}-{2,3,4,5}的值為1
答案:錯(cuò)set([1,2,2,3])=={1,3,2}的值為True
答案:對(duì)ls=[1,2,2,3,4,4]set(ls)的值為{1,2,2,3,4,4}
答案:錯(cuò)以下程序的運(yùn)行結(jié)果是?st=set(map(int,'1234567567'))st.remove(5)print(st)
答案:{1,2,3,4,6,7}
執(zhí)行以下代碼后,ls的值是?ls=list('abcd')ls.append(ls.pop(1))
答案:['a',
'c','d','b']s='{:<5,.3f}'.format(1234.78569),s的值為?
答案:'1,234.786'下列有關(guān)字符串的說(shuō)法錯(cuò)誤的是?
答案:字符串以\n標(biāo)識(shí)字符串的結(jié)束以下有關(guān)變量的說(shuō)法錯(cuò)誤的是?
答案:變量無(wú)需先創(chuàng)建即可使用執(zhí)行下列語(yǔ)句,輸入“西南,財(cái)經(jīng),大學(xué)”,輸出結(jié)果為?a=input('').split(',')x=0whilex答案:西南財(cái)經(jīng)大學(xué)在執(zhí)行循環(huán)結(jié)構(gòu)foriinrange(8,-4,-1):
...時(shí),循環(huán)第7次時(shí),i的值為?
答案:2表達(dá)式{1,2,'3',4}-{3,4,5,6}的值為?
答案:{1,2,‘3’}t=tuple('西南財(cái)經(jīng)大學(xué)'),t[::-1]的結(jié)果是?
答案:('學(xué)','大','經(jīng)','財(cái)','南','西')執(zhí)行下列語(yǔ)句,程序的運(yùn)行結(jié)果是?ls=list('abcd')dells[1]ls.remove('b')print(ls)
答案:系統(tǒng)報(bào)錯(cuò)以下哪種數(shù)據(jù)類型的對(duì)象不能作為列表extend()方法的參數(shù)?
答案:整數(shù)以下哪個(gè)選項(xiàng)可以將[1,2,3]和[4,5,6]連接形成一個(gè)新列表[1,2,3,4,5,6]?
答案:[1,2,3]+[4,5,6]print('.'.join(['西','南','財(cái)','經(jīng)','大','學(xué)'])的輸出結(jié)果是?
答案:西.南.財(cái).經(jīng).大.學(xué)能返回序列s中索引從i到j(luò)(不包含j)、步長(zhǎng)為k的子序列的表達(dá)式是?
答案:s[i:j:k]IPO編程方法不包括以下哪個(gè)過(guò)程?
答案:PROGRAM下列哪個(gè)選項(xiàng)不符合變量命名規(guī)范?
答案:1_vars={1,2,3,4}執(zhí)行以下哪個(gè)操作不會(huì)報(bào)錯(cuò)?
答案:s.add(5)下列哪個(gè)操作符表示求兩個(gè)集合的交集的運(yùn)算?
答案:&d={'a':[10,20],'b':('1','2','3'),'c':{10,20}}則d['c'][1]的值是20
答案:錯(cuò)x={1:2,3:4,5:6},那么表達(dá)式sum(x)的值為9
答案:對(duì)現(xiàn)有一個(gè)字典d,d.pop(鍵)可以根據(jù)鍵彈出指定的鍵值對(duì),而d.popitem()則不能指定鍵,只能隨機(jī)彈出鍵值對(duì)
答案:對(duì)字典的鍵和值都可以是列表
答案:錯(cuò)d是一個(gè)字典對(duì)象,len(d)可以表示字典中“鍵”或“鍵值對(duì)"的個(gè)數(shù)
答案:對(duì)任何一個(gè)列表ls都可以通過(guò)dict(ls)轉(zhuǎn)化為字典
答案:錯(cuò)9(單選題)d=
{'a':1,'b':2,'c':3}下列語(yǔ)句錯(cuò)誤的是?
答案:d[1]d=
{'a':1,'b':2,'c':3}下列表達(dá)錯(cuò)誤的是?
答案:forxinrange(d):d={'a':1,'b':2,'c':3','d':4),d.get('a',0)和d.get('f',10)的值分別為:
答案:1,10d={'a':1,'b':2,'c':'3'},下面哪個(gè)選項(xiàng)是正確的?
答案:d.setdefault('d',0)的值為0,同時(shí)在字典中添加鍵值對(duì)'d':0給定字典d,哪個(gè)選項(xiàng)對(duì)xind的描述是正確的?????????????????????????????????????????????????????????????????????????????????????????????????
答案:判斷x是否是字典d中的鍵運(yùn)行下面的程序,輸出結(jié)果是?
d={'a':1,'b':2,'b':'3'}
print(len(d.items())
答案:2給定字典d,哪個(gè)選項(xiàng)可以獲得字典所有“鍵”:“值”對(duì)的“值”?????????????????????????????????????????????????????????????????????????????????????????????????
答案:d.values()以下描述錯(cuò)誤的是:
答案:{}表示一個(gè)空集合2.[其它]用戶輸入一串任意的文字,計(jì)算其中每個(gè)字符出現(xiàn)的頻數(shù)并按照頻數(shù)從高到低輸出。(字符及其頻數(shù)用字典保存,字符為鍵,頻數(shù)為值)
答案:思路1:1.獲取輸入2.創(chuàng)建空字典用于以后存放結(jié)果3.遍歷輸入的字符串:
累加該字符的頻數(shù):字典[字符]=字典中字符對(duì)應(yīng)的值(如果字典中沒(méi)有這個(gè)字符,則取值為0)+14.將字典的鍵值對(duì)轉(zhuǎn)化為列表,并按頻數(shù)排序5.
輸出s=input('請(qǐng)輸入任意內(nèi)容:')d={}
#頻數(shù)字典初始化forcins:
d[c]=d.get(c,0)+1
#字符對(duì)應(yīng)的頻數(shù)加1,第一次出現(xiàn)時(shí)為0加1ls=list(d.items())ls.sort(key=lambdax:x[-1],reverse=True)foreinls:
print(e[0],e[1])思路2:1.獲取輸入2.創(chuàng)建空字典用于以后存放結(jié)果3.遍歷輸入字符串中的不同字符(集合):
字典[字符]=該字符在輸入字符串中出現(xiàn)的次數(shù)4.將字典的鍵值對(duì)轉(zhuǎn)化為列表,并按頻數(shù)排序5.
輸出s=input('請(qǐng)輸入任意內(nèi)容:')d={}forcinset(s):
#將字符串s轉(zhuǎn)化為集合,過(guò)濾掉重復(fù)字符
d[c]=s.count(c)
#得到c對(duì)應(yīng)字符的個(gè)數(shù),并將字符及其個(gè)數(shù)作為鍵值對(duì)加入字典#上述3行也可以用字典推導(dǎo)式:d={c:s.count(c)forcinset(s)}ls=list(d.items())ls.sort(key=lambdax:x[-1],reverse=True)foreinls:
print(e[0],e[1])1.[其它]小明的日常支出項(xiàng)目包括:書、文具、餐飲等,請(qǐng)編程實(shí)現(xiàn):逐條輸入小明的消費(fèi)明細(xì)信息,一條消費(fèi)明細(xì)一次性輸入,包括消費(fèi)項(xiàng)目、金額、日期,各項(xiàng)之間用逗號(hào)隔開,如果直接回車則表示輸入結(jié)束。將消費(fèi)信息保存在列表中,一次消費(fèi)(包含三項(xiàng)的小列表)為一個(gè)元素。例如:請(qǐng)輸入消費(fèi)項(xiàng)目、金額、日期,中間用逗號(hào)隔開,直接回車結(jié)束輸入:書,30,2024-1-1請(qǐng)輸入消費(fèi)項(xiàng)目、金額、日期,中間用逗號(hào)隔開,直接回車結(jié)束輸入:文具,20,2024-1-4請(qǐng)輸入消費(fèi)項(xiàng)目、金額、日期,中間用逗號(hào)隔開,直接回車結(jié)束輸入:書,15,2024-2-4請(qǐng)輸入消費(fèi)項(xiàng)目、金額、日期,中間用逗號(hào)隔開,直接回車結(jié)束輸入:文具,10,2024-2-10請(qǐng)輸入消費(fèi)項(xiàng)目、金額、日期,中間用逗號(hào)隔開,直接回車結(jié)束輸入:餐飲,100,2024-3-4請(qǐng)輸入消費(fèi)項(xiàng)目、金額、日期,中間用逗號(hào)隔開,直接回車結(jié)束輸入:請(qǐng)分類統(tǒng)計(jì)小明每個(gè)消費(fèi)項(xiàng)目的消費(fèi)總額,并輸出消費(fèi)總額最高的項(xiàng)目及金額
答案:總體思路:一、輸入消費(fèi)明細(xì)并保存
1.列表初始化為空
2.循環(huán):輸入消費(fèi)信息并分隔,將項(xiàng)目、數(shù)值型的金額、日期形成小列表并加入1中的列表二、分類統(tǒng)計(jì)
1.結(jié)果用字典保存(消費(fèi)項(xiàng)目為鍵,總金額為值),初始化為空字典;
2.遍歷消費(fèi)列表:得到每次消費(fèi)的項(xiàng)目和金額,更新該項(xiàng)目在字典中的值三、按消費(fèi)金額對(duì)統(tǒng)計(jì)結(jié)果排序
1.將統(tǒng)計(jì)結(jié)果字典的鍵值對(duì)轉(zhuǎn)化為列表
2.對(duì)上述列表按照元素的最后一個(gè)子元素(消費(fèi)總金額)排序四、輸出消費(fèi)總額最高的項(xiàng)目及金額#輸入并保存在列表中l(wèi)s=[]whileTrue:
xfstr=input('請(qǐng)輸入消費(fèi)項(xiàng)目、金額、日期(年-月-日),中間用逗號(hào)隔開,直接回車結(jié)束輸入:')
iflen(xfstr)==0:
#直接回車,輸入字符串為空串
break
xls=xfstr.split(',')
xls[1]=
eval(xls[1])
#修改消費(fèi)金額為數(shù)值型的消費(fèi)金額
ls.append(xls)
#一次消費(fèi)信息作為元素加入列表#分類統(tǒng)計(jì)d={}foreinls:
#遍歷列表
xm=e[0]
#項(xiàng)目
je=e[1]
#金額
d[xm]=d.get(xm,0)+je
#對(duì)統(tǒng)計(jì)結(jié)果按總金額排序
d_ls=list(d.items())d_ls.sort(key=lambdax:x[-1],reverse=True)#輸出print('消費(fèi)金額最高的項(xiàng)目是:{},金額為:{}'.format(d_ls[0][0],d_ls[0][-1]))lambdax:x[-1]表示一個(gè)匿名函數(shù),形參為x,返回值為x[-1]
答案:對(duì)/star3/origin/881dd2c1b0cc2b55fa68a4c0e93146ca.png
答案:錯(cuò)表達(dá)式list(map(lambdax:x+5,[1,2,3]))的值為[6,7,8]
答案:對(duì)函數(shù)體中可以沒(méi)有return語(yǔ)句,相當(dāng)于returnNone
答案:對(duì)全局變量只能在函數(shù)外部定義
答案:錯(cuò)函數(shù)定義就會(huì)執(zhí)行函數(shù)體語(yǔ)句
答案:錯(cuò)函數(shù)中,return的作用是將結(jié)果返回到函數(shù)定義的位置。
答案:錯(cuò)下列有關(guān)函數(shù)的說(shuō)法正確的是?
答案:定義函數(shù)時(shí)并沒(méi)有執(zhí)行函數(shù)中的語(yǔ)句,調(diào)用函數(shù)時(shí)才執(zhí)行這些語(yǔ)句defchange(n2):
n=2
n
**=
n2+1
print(n,end=',')n=2change(n)print(n)執(zhí)行上述程序,輸出結(jié)果為?
答案:8,2下列代碼的輸出結(jié)果是?
X='swufe'
deffunc():
X='西南財(cái)經(jīng)大學(xué)'
print(X)
func()
print(X)
答案:西南財(cái)經(jīng)大學(xué)swufe下列代碼的輸出結(jié)果是?def
func(a,
b=4,
c=5):
print(a+b+c)
func(1,2)
答案:8global保留字的作用是?
答案:在函數(shù)內(nèi)部聲明全局變量匿名函數(shù)lambdax:x[-1]
,
在關(guān)鍵字lambda和冒號(hào)之間的是?
答案:形式參數(shù)定義函數(shù)使用的關(guān)鍵字是?
答案:def編寫一個(gè)函數(shù),形參為一個(gè)字符串,返回字符串中包含的數(shù)字個(gè)數(shù)、小寫字符個(gè)數(shù)、大寫字符個(gè)數(shù)連續(xù)輸入字符串,直接回車則結(jié)束輸入,調(diào)用函數(shù),輸出每個(gè)字符串及其中包含的數(shù)字個(gè)數(shù)、小寫字符個(gè)數(shù)、大寫字符個(gè)數(shù)
答案:defstr_gs(s):
intc,lowc,uppc=0,0,0
#數(shù)字個(gè)數(shù)、小寫字符個(gè)數(shù)、大寫字符個(gè)數(shù)初始化為0
forcins:
#遍歷字符串
ifc.isdigit():
#如果當(dāng)前字符是數(shù)字
intc+=1
elifc.islower():
#如果當(dāng)前字符是小寫字符
lowc+=1
elifc.isupper():
#如果當(dāng)前字符是大寫字符
uppc+=1
returnintc,lowc,uppc
#返回三個(gè)值#主程序whileTrue:
s=input('輸入字符串,直接回車結(jié)束輸入:')
iflen(s)==0:
#直接回車
break
intgs,lowergs,uppergs=str_gs(s)
#調(diào)用函數(shù)得到三個(gè)值分別賦值給三個(gè)變量
print('{}包含:{}個(gè)數(shù)字,{}個(gè)小寫字符,{}個(gè)大寫字符'.format(s,intgs,lowergs,uppergs))編寫函數(shù)判定一個(gè)正整數(shù)是否是完數(shù)(所有因子(不包括其自身)之和等于該數(shù)本身),通過(guò)調(diào)用函數(shù),輸出100以內(nèi)所有完數(shù)的累加和,并判定累加和的奇偶
答案:defws(n):
s=0
#n的因子和初始化
foriinrange(1,n):
ifn%i==0:
#i是n的因子
s+=i
#累加因子
ifs==n:
#循環(huán)結(jié)束后判斷因子累加和是否等于n
returnTrue
else:
returnFalse#主程序sumn=0
#完數(shù)累加和初始化為0forninrange(1,100):
ifws(n):
sumn+=nprint(sumn)ifsumn%2==0:
print('偶數(shù)')else:
print('奇數(shù)')定義一個(gè)函數(shù)計(jì)算一個(gè)正整數(shù)的階乘(不用遞歸函數(shù)),正整數(shù)n為形參,其階乘為返回值。用戶輸入一個(gè)正整數(shù)k,通過(guò)調(diào)用上述函數(shù),計(jì)算并輸出1!+2!+...+k!的值
答案:#定義階乘函數(shù)fact,n為形參deffact(n):
p=1
#階乘結(jié)果初始化為1
foriinrange(1,n+1):
p=p*i
return
p
#主程序
k=int(input('輸入一個(gè)正整數(shù)'))sumk=0
#累加和結(jié)果初始化為0foriinrange(1,k+1):
sumk+=fact(i)
print(sumk)一個(gè)異常處理語(yǔ)句中最多只能包含一個(gè)else子句、finally子句
答案:對(duì)一個(gè)異常處理語(yǔ)句中可以通過(guò)多個(gè)except子句處理多種不同類型的異常
答案:對(duì)編程時(shí)將可能發(fā)生異常的語(yǔ)句放在try:后,以便捕獲可能發(fā)生的異常
答案:對(duì)異常指的是程序的語(yǔ)法錯(cuò)誤
答案:錯(cuò)f=open('file.txt')表示以文本讀寫模式打開文件file.txt
答案:錯(cuò)打開的文件可以作為可迭代類型對(duì)象進(jìn)行遍歷
答案:對(duì)python中任何文件都可以選擇按文本方式或按二進(jìn)制方式讀取其內(nèi)容
答案:對(duì)打開文件使用函數(shù)open()
答案:對(duì)下列程序段執(zhí)行后,輸出結(jié)果是:number
=
20try:
if
1/number
<
0:
number
=
-number
print(number,end='
')except:
print("有異常發(fā)生",end='
')else:
print("平安無(wú)事",end='
')finally:
print("我很好我可以的",end='
')
答案:20平安無(wú)事我很好我可以的以下哪個(gè)不能表示文件的打開方式?
答案:'c'當(dāng)要打開的文件存在時(shí),下列哪種打開文件的方式會(huì)報(bào)錯(cuò)?
答案:x下面有關(guān)文件的表達(dá)正確的是:
答案:通過(guò)文件的.writelines()方法可以向文件中寫入元素為字符串的列表的內(nèi)容如果要將文件f的所有內(nèi)容讀入一個(gè)列表ls,每行形成列表的一個(gè)元素,則應(yīng)該使用哪個(gè)表達(dá)?
答案:ls=f.readlines()如果要對(duì)文件以文本方式進(jìn)行讀操作,在打開文件時(shí)應(yīng)該使用下列哪個(gè)選項(xiàng)?
答案:rtpython中下列有關(guān)文件操作的表述錯(cuò)誤的是:
答案:文本文件只能以文本方式進(jìn)行讀取編寫一個(gè)統(tǒng)計(jì)列表中每個(gè)元素出現(xiàn)頻數(shù)的函數(shù),形參為列表,返回值為保存統(tǒng)計(jì)結(jié)果的字典主程序:產(chǎn)生包含50個(gè)1-6范圍內(nèi)隨機(jī)整數(shù)的列表,通過(guò)調(diào)用上述函數(shù),統(tǒng)計(jì)該列表中各數(shù)出現(xiàn)的頻數(shù),輸出出現(xiàn)頻數(shù)最高的數(shù)及其頻數(shù)
答案:defget_ps(ls):
d={}
fore
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 休閑教育課程體系-洞察分析
- 娛樂(lè)明星經(jīng)紀(jì)代理策略優(yōu)化-洞察分析
- 太陽(yáng)能空氣凈化技術(shù)-洞察分析
- 網(wǎng)絡(luò)拓?fù)涞木€段樹構(gòu)建-洞察分析
- 諧波效應(yīng)評(píng)估模型-洞察分析
- 鐵路物流服務(wù)質(zhì)量提升-洞察分析
- 虛實(shí)融合動(dòng)畫技術(shù)-洞察分析
- 藥品價(jià)格監(jiān)管的國(guó)際經(jīng)驗(yàn)借鑒-洞察分析
- 語(yǔ)義相似度評(píng)估-洞察分析
- 語(yǔ)言演變與語(yǔ)義場(chǎng)動(dòng)態(tài)變化研究-洞察分析
- 駕駛員勞務(wù)派遣投標(biāo)方案
- 高三一本“臨界生”動(dòng)員會(huì)課件
- 家長(zhǎng)會(huì)課件:四年級(jí)家長(zhǎng)會(huì)語(yǔ)文老師課件
- 神經(jīng)生物學(xué)復(fù)習(xí)知識(shí)點(diǎn)
- YY 0306-2023熱輻射類治療設(shè)備通用技術(shù)要求
- 中醫(yī)內(nèi)科學(xué)考試題庫(kù)及參考答案
- 建筑工程典型安全質(zhì)量事故案例分析及事故防治概要(大量案例)
- 吉林大學(xué)模板(經(jīng)典)課件
- 國(guó)開創(chuàng)業(yè)基礎(chǔ)期末筆試復(fù)習(xí)(含答案)
- 2023年軍事理論知識(shí)考試題(附含答案)
- 國(guó)開電大2022年春季期末考試《園產(chǎn)品貯藏技術(shù)》試題(試卷代號(hào)2713)
評(píng)論
0/150
提交評(píng)論