您好,登錄后才能下訂單哦!
本篇文章為大家展示了常見的python考核試題,內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
一、選擇題(每題2分,共20分)
1.下列哪個(gè)語(yǔ)句在Python中是非法的? (B)
A、x = y = z = 1 B、x = (y = z + 1)
C、x, y = y, x D、x += y??x=x+y
2.關(guān)于Python內(nèi)存管理,下列說法錯(cuò)誤的是 (B)
A、變量不必事先聲明 B、變量無須先創(chuàng)建和賦值而直接使用
C、變量無須指定類型 D、可以使用del釋放資源
3.print 100 - 25 * 3 % 4 應(yīng)該輸出什么?(B)
A.1B.97
C.25D.0
4、下面哪個(gè)不是Python合法的標(biāo)識(shí)符 (B)
A、int32 B、40XL C、self D、__name__
5、下列哪種說法是錯(cuò)誤的 (A)
A、除字典類型外,所有標(biāo)準(zhǔn)對(duì)象均可以用于布爾測(cè)試
B、空字符串的布爾值是False
C、空列表對(duì)象的布爾值是False
D、值為0的任何數(shù)字對(duì)象的布爾值是False
6、下列表達(dá)式的值為True的是 (C)
A、5+4j > 2-3j B、3>2>2
1==1and2!=1?D、not(1==1and 0!=1)
7、Python不支持的數(shù)據(jù)類型有 (A)
A、char B、int C、float D、list
8、以下不能創(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] ) )
9、下面不能創(chuàng)建一個(gè)集合的語(yǔ)句是 (C)
A、s1 = set () B、s2 = set (“abcd”)
C、s3 = (1, 2, 3, 4) D、s4 = frozenset( (3,2,1) )
10、下列Python語(yǔ)句正確的是 (D)
A、min = x if x < y else y B、max = x > y and?x : y
C、if (x > y) print x D、while True : pass
二.填空(每空一分,共10分)
設(shè)L=[‘a(chǎn)’,’b’,’c’,’d’,’e’,’f’,’g’],則L[3]值是_d___ ??L[3:5]值是__[‘d’,’e’]_ L[:5]值是__[‘a(chǎn)’,’b’,’c’,’d’,’e’]_ L[3:]值是__[’d’,’e’,’f’,’g’]_ L[-5:-2]值是__[’c’,’d’,’e’]_ L[::2]值是__[‘a(chǎn)’,’c’,’e’,’g’]_
Python中可變數(shù)據(jù)類型有__list___和___dict__,不可變數(shù)據(jù)類型有___int___和__str___
三、簡(jiǎn)答題(每題5分,共45分)
1 聲明變量注意事項(xiàng)有那些?
答:
1.以字母、數(shù)字、下劃線組成,不能以數(shù)字開頭;
2.不能用關(guān)鍵字。
2 簡(jiǎn)述 對(duì)象和 類的關(guān)系?
答:
類:抽象的,只有一個(gè),一類事物的總稱;
對(duì)象:實(shí)體的,可以有多個(gè),是類的具體實(shí)現(xiàn)。
3 Python里面如何實(shí)現(xiàn)tuple和list的轉(zhuǎn)換?
答:tuple(list)
list(tuple)
介紹一下except的用法和作用?
答:
與try語(yǔ)句連用,如果try語(yǔ)句正確,則不會(huì)執(zhí)行except語(yǔ)句;
如果try語(yǔ)句錯(cuò)誤,則跳轉(zhuǎn)到except語(yǔ)句,和except語(yǔ)句后的錯(cuò)誤類型進(jìn)行匹配,錯(cuò)誤類型一致,則輸出相應(yīng)except語(yǔ)句下的內(nèi)容。如果都不匹配,則再一次執(zhí)行try語(yǔ)句,并且報(bào)錯(cuò);
如果后面有else語(yǔ)句,在try語(yǔ)句正確的情況下執(zhí)行;
如果后面有finally語(yǔ)句,一定執(zhí)行;
5 Dict特點(diǎn)?
答:
key不重復(fù),不可變;
數(shù)據(jù)無序排放;
數(shù)據(jù)無序排放;
可變數(shù)據(jù)類型。
6 List 和tuple區(qū)別
答:
相同點(diǎn):都是有序集合
異同點(diǎn):1. list是可變數(shù)據(jù)類型,tuple是不可變數(shù)據(jù)類型;
2.定義方式:list[] tuple()
3.list 有append(),insert()等方法;tuple沒有
7 定義函數(shù)的規(guī)則是?
答:
以def開頭,后接函數(shù)名和 ’():’,有參數(shù)寫在()中,下一行縮進(jìn),如果有返回值則寫在return后面。
8 面向?qū)ο笳Z(yǔ)言都有封裝,繼承,多態(tài),分別描述 封裝,繼承,多態(tài)的含義和作用?
答:
封裝:把類的屬性賦予給對(duì)象 作用:方便調(diào)用
繼承:子類繼承父類的屬性和方法 作用:減少代碼量
多態(tài):一類事物的多種表現(xiàn)形式,父類的實(shí)現(xiàn)指向子類的引用,需要利用繼承,方法重寫,重載等方法 作用:減少代碼量
9 在python中f = open('d:/a.txt', 'r')讀取文件需要注意哪些
答:
f是變量。open是打開文件,如果文件不存在,則創(chuàng)建后再打開。‘d:/a.txt’是文件路勁,代表d盤中一個(gè)名為‘a(chǎn).txt’的文件,’r’是以讀的方式打開。
三 編程題(每題5分,共25分)
1 .實(shí)現(xiàn)登錄功能(一個(gè)需求2分 ,共4分)
需求 1 實(shí)現(xiàn)用戶輸入用戶名和密碼,當(dāng)用戶名為 admin且 密碼為 123 時(shí),顯示登陸成功,否則登陸失敗!
答:
name = input(‘請(qǐng)輸入用戶名:’) pw = input(‘請(qǐng)輸入用戶密碼:’) if (name == ‘a(chǎn)dmin’)and (pw == ‘123’): print(‘登錄成功’) else: Print(‘登錄失敗’)
需求2 實(shí)現(xiàn)用戶輸入用戶名和密碼,當(dāng)用戶名為 seven 且 密碼為 123 時(shí),顯示登陸成功,否則登陸失敗,失敗時(shí)允許重復(fù)輸入三次
答:
for i in range(3): name = input(‘請(qǐng)輸入用戶名:’) pw = input(‘請(qǐng)輸入用戶密碼:’) f (name == ‘a(chǎn)dmin’)and (pw == ‘123’): print(‘登錄成功’) break else: print(‘登錄失敗’)
2 寫代碼,有如下變量,請(qǐng)按照要求實(shí)現(xiàn)每個(gè)功能(0.5分一個(gè),共4分)
name = " aleX is a man"
移除 name 變量對(duì)應(yīng)的值兩邊的空格,并輸出移除后的內(nèi)容
print(name.strip(‘ ’))
判斷 name 變量對(duì)應(yīng)的值a出現(xiàn)次數(shù),并輸出結(jié)果
print(name.count(‘a(chǎn)’))
3. 判斷 name 變量對(duì)應(yīng)的值以a進(jìn)行分割,并輸出結(jié)果
print(name.split(‘a(chǎn)’))
4. 將 name 變量對(duì)應(yīng)的值a替換成w,并輸出結(jié)果
print(name.replace(‘a(chǎn)’,’w’))
5. 將 name 變量對(duì)應(yīng)的值變小寫,并輸出結(jié)果
print(name.lower())
6. 請(qǐng)輸出 name 變量對(duì)應(yīng)的值的第 2 個(gè)字符?
print(name[1])
7. 請(qǐng)輸出 name 變量對(duì)應(yīng)的值的前 3 個(gè)字符?
print(name[:3])
8. 請(qǐng)輸出 name 變量對(duì)應(yīng)的值的后 2 個(gè)字符?
print(name[-2:])
從鍵盤輸入一個(gè)字符串,將小寫字母全部轉(zhuǎn)換成大寫字母,然后輸出到一個(gè)磁盤文件"test"中保存。
答:
a = input(‘請(qǐng)輸入一個(gè)字符串:’) b = a.upper() f = open(‘d:/test/b.txt’,’w+’) f.write(b)
4 請(qǐng)用循環(huán)的方式輸出九九乘法表
答:
for i in range(1,10): for j in range(1,10): if j <= i: print(j,'*',i,'=',(i*j))
5.輸入一個(gè)六位數(shù),求各位數(shù)之和,如果各位數(shù)之和為36-45,則此數(shù)字為幸運(yùn)數(shù)字。
答:
a = int(input(‘請(qǐng)輸入一個(gè)六位數(shù):’)) if len(str(a)) == 6: ge == a%10 ten == a%100//10 hu == a%1000//100 th == a%10000//1000 wan == a//10000%10 tw == a//100000 if (ge+ten+hu+th+wan+tw) >= 36 and (ge+ten+hu+th+wan+tw)<= 45: Print(a,‘為幸運(yùn)數(shù)字’) else: print(‘您輸入的位數(shù)有誤,請(qǐng)重新輸入。。。’)
6 某個(gè)公司采用公用電話傳遞數(shù)據(jù),數(shù)據(jù)是四位的整數(shù),在傳遞過程中是加密的,加密規(guī)則如下:每位數(shù)字都加上5,然后用和除以10的余數(shù)代替該數(shù)字,再將第一位和第四位交換,第二位和第三位交換。試輸入一個(gè)數(shù),并求出對(duì)應(yīng)的數(shù)字。(8分)
答:
num = int(input('請(qǐng)輸入一個(gè)四位數(shù):')) if len(str(num)) == 4: ge = num % 10 ten = num%100//10 hu = num//100%10 th = num // 1000 ge1 = ge + 5 ge2 = ge1 % 10 ten1 = ten + 5 ten2 = ten1 % 10 hu1 = hu + 5 hu2 = hu1 % 10 th2 = th + 5 th3 = th2 % 10 print(‘加密后的數(shù)為:’,int((str(ge2)+str(ten2)+str(hu2)+str(hu2)))) else: print('您輸入的位數(shù)有誤,請(qǐng)重新輸入')
7.一:定義一個(gè)學(xué)生類。有下面的類屬性:(12分)
1 姓名
2 年齡
3 成績(jī)(語(yǔ)文,數(shù)學(xué),英語(yǔ))[每課成績(jī)的類型為整數(shù)]
類方法:
1 獲取學(xué)生的姓名:get_name() 返回類型:str
2 獲取學(xué)生的年齡:get_age() 返回類型:int
3 返回3門科目中最高的分?jǐn)?shù)。get_course() 返回類型:int
寫好類以后,可以定義2個(gè)同學(xué)測(cè)試下:
zm = Student('zhangming',20,[69,88,100])
返回結(jié)果:
Zhangming 20 100
答:
class Student(): def __init__(self,name,age,score): self.name = name self.age = age self.score = score def get_name(self): print(‘學(xué)生姓名:’,self.name) def get_age(self): print(‘學(xué)生年齡:’,self.age) def get_course(self): print(‘最高的分?jǐn)?shù):’,max(self.score)) zm = Student(‘張明’,20,[69,88,100]) zm.get_name() zm.get_age() zm.get_course()
上述內(nèi)容就是常見的python考核試題,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。