python筆試題(附帶答案)

一、選擇題(每題2分,共70分)
1.下列哪個(gè)語句在Python中是非法的?( B )
A、x = y = z = 1 B、x = (y = z + 1)
C、x, y = y, x D、x += y
2.關(guān)于Python內(nèi)存管理,下列說法錯(cuò)誤的是(B )
A、變量不必事先聲明 B、變量無須先創(chuàng)建和賦值而直接使用
C、變量無須指定類型 D、可以使用del釋放資源
3、下面哪個(gè)不是Python合法的標(biāo)識(shí)符(B )
A、int32 B、40XL C、self D、__name__
4、下列哪種說法是錯(cuò)誤的 ( A )
A、除字典類型外,所有標(biāo)準(zhǔn)對(duì)象均可以用于布爾測(cè)試
B、空字符串的布爾值是False
C、空列表對(duì)象的布爾值是False
D、值為0的任何數(shù)字對(duì)象的布爾值是False
5、Python不支持的數(shù)據(jù)類型有 ( A)
A、char B、int C、float D、list
6、關(guān)于Python中的復(fù)數(shù),下列說法錯(cuò)誤的是(C )
A、表示復(fù)數(shù)的語法是real + image j
B、實(shí)部和虛部都是浮點(diǎn)數(shù)
C、虛部必須后綴j,且必須是小寫
D、方法conjugate返回復(fù)數(shù)的共軛復(fù)數(shù)
7、關(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)字符串中可以包含換行回車等特殊字符
8、以下不能創(chuàng)建一個(gè)字典的語句是 ( C )
A、dict1 = {} B、dict2 = { 3 : 5 }
C、dict3 = {[1,2,3]: “uestc”}
D、dict4 = {(1,2,3): “uestc”}
9、下列Python語句正確的是 ( D )
A、min = x if x < y else y
B、max = x > y ? x : y
C、if (x > y) print x
D、while True : pass
10 計(jì)算機(jī)中信息處理和信息儲(chǔ)存用(A)
A 二進(jìn)制代碼
B 十進(jìn)制代碼
C 十六進(jìn)制代碼
D ASCII代碼
11 python源程序執(zhí)行的方式(B)
A 編譯執(zhí)行 B 解析執(zhí)行 C 直接執(zhí)行 D邊編譯邊執(zhí)行
12 Python語言語句塊的標(biāo)記是( C )
A 分號(hào) B 逗號(hào) C 縮進(jìn) D /
13 以下是字符轉(zhuǎn)換成字節(jié)的方法是(B)
A decode() B encode() C upper() D rstrip()
14 以下是正確的字符串(BD)
A ‘abc”ab” B ‘abc”ab’ C “abc”ab” D “abc\”ab”
15 “ab”+”c”*2 結(jié)果是:(C)
A abc2 B abcabc C abcc D ababcc
16 以下會(huì)出現(xiàn)錯(cuò)誤的是(B)
A ‘北京’.encode()
B ‘北京’.decode()
C ‘北京’.encode().decode()
D 以上都不會(huì)錯(cuò)誤
17 如下:
str1 = "Runoob example....wow!!!"
str2 = "exam";
Print(str1.find(str2, 5)) 打印的結(jié)果是(B)
A 6 B 7 C 8 D -1
18 下面對(duì)count(),index(), find()方法描述錯(cuò)誤的是(BC)
A count() 方法用于統(tǒng)計(jì)字符串里某個(gè)字符出現(xiàn)的次數(shù)
B find() 方法檢測(cè)字符串中是否包含子字符串 str 如果包含子字符串返回開始的索引值,否則會(huì)報(bào)一個(gè)異常
C index() 方法檢測(cè)字符串中是否包含子字符串 str, 如果str不在 返回-1
D 以上都錯(cuò)誤
19 有下面的程序段
if k<=10 and k >0: if k >5: if k>8: x=0 else: X=1 else: if k>2: x=3 else: x=4
其中k取那組值時(shí) x =3 ( A)
A 3,4,5 B 3,4 C 5,6,7 D 4,5
20 以下不是python中的關(guān)鍵字(D)
A raise B with C import D final
21 調(diào)用以下函數(shù)返回的值(D)
def myfun(): pass
A 0 B 出錯(cuò)不能運(yùn)行 C 空字符串 D None
22 函數(shù)如下:
def showNnumber(numbers): for n in numbers: print(n)
下面那些在調(diào)用函數(shù)時(shí)會(huì)報(bào)錯(cuò)( C)
A showNumer([2,4,5]) B showNnumber(‘abcesf’)
C showNnumber(3.4) D showNumber((12,4,5))
23 函數(shù)如下
def chanageInt(number2): number2 = number2+1 print("changeInt: number2= ",number2) #調(diào)用 number1 = 2 chanageInt(number1) print("number:",number1)
打印結(jié)果哪項(xiàng)是正確的( B )
A changeInt: number2= 3 number: 3
B changeInt: number2= 3 number: 2
C number: 2 changeInt: number2= 2
D number: 2 changeInt: number2= 3
24 函數(shù)如下
def chanageList(list): list.append(" end") print("list",list) #調(diào)用 strs =['1','2'] chanageList() print("strs",strs)
下面對(duì) strs 和 list 的值輸出正確的是( C D )
A strs ['1','2'] B list ['1','2']
C list ['1','2',’end’] D strs ['1','2',’end’]
25 定義類如下:
class Hello(): pass
下面說明錯(cuò)誤的是( C D )
A 該類實(shí)例中包含__dir__()方法
B 該類實(shí)例中包含__hash__()方法
C 該類實(shí)例中只包含__dir__(),不包含__hash__()
D 該類沒有定義任何方法,所以該實(shí)例中沒有包含任何方法
26定義類如下:
class hello(): def showInfo(sef): print(self.x)
下面描述正確的是(AC)
A該類不可以實(shí)例化
B 該類可以實(shí)例化
C 在pycharm 工具中會(huì)出現(xiàn)語法錯(cuò)誤,說self沒有定義
D 該類可以實(shí)例化,并且能正常通過對(duì)象調(diào)用showInfo()
27 關(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)用
28 定義類如下
class Hello(): def __init__(self,name) self.name=name def showInfo(self) print(self.name)
下面代碼能正常執(zhí)行的 ( C )
A h = Hello
h.showInfo()
B h = Hello()
h.showInfo(‘張三’)
C h = Hello(‘張三’)
h.showInfo()
D h = Hello(‘admin’)
showInfo
29 定義類如下:
class A(): def a(): print(“a”) class B (): def b(): print(“b”) class C(): def c(): print(c) class D(A,C): def d(): print(“d”) d = D() d.a() d.b() d.d()
以下程序能執(zhí)行的結(jié)果是(D)
A a,b,d B a,d
C d,a D 執(zhí)行會(huì)報(bào)錯(cuò)
30 以下哪項(xiàng)python能正常啟動(dòng)(D)
A 拼寫錯(cuò)誤 B 錯(cuò)誤表達(dá)式
C 縮進(jìn)錯(cuò)誤 D 手動(dòng)拋出異常
31 有關(guān)異常說法正確的是(B)
A 程序中拋出異常終止程序
B 程序中拋出異常不一定終止程序
C 拼寫錯(cuò)誤會(huì)導(dǎo)致程序終止
D 縮進(jìn)錯(cuò)誤會(huì)導(dǎo)致程序終止
32 對(duì)以下程序描述錯(cuò)誤的是(A)
try:
#語句塊1
except IndexError as i:
# 語句塊2
A 改程序?qū)Ξ惓L幚砹?,因此一定不?huì)終止程序
B 改程序?qū)Ξ惓L幚砹?,不一定不?huì)因異常引發(fā)終止
C 語句塊1,如果拋出IndexError 異常,不會(huì)因?yàn)楫惓=K止程序
D 語句塊2 不一定會(huì)執(zhí)行
33 程序如下:
try: number = int(input("請(qǐng)輸入數(shù)字:")) print("number:",number) print("=======hello======") except Exception as e: # 報(bào)錯(cuò)錯(cuò)誤日志 print("打印異常詳情信息: ",e) else: print("沒有異常") finally:#關(guān)閉資源 print("finally") print("end")
輸入的是 1a 結(jié)果是:( B )
A number: 1
打印異常詳情信息: invalid literal for int() with base 10:
finally
end
B 打印異常詳情信息: invalid literal for int() with base 10:
finally
end
C ========hello===========
打印異常詳情信息: invalid literal for int() with base 10:
finally
End
D 以上都正確
34 導(dǎo)入模塊的方式錯(cuò)誤的是(D)
A import mo B from mo import *
C import mo as m D import m from mo
35 以下關(guān)于模塊說法錯(cuò)誤的是(C)
A 一個(gè)xx.py就是一個(gè)模塊
B 任何一個(gè)普通的xx.py文件可以作為模塊導(dǎo)入
C 模塊文件的擴(kuò)展名不一定是 .py
D 運(yùn)行時(shí)會(huì)從制定的目錄搜索導(dǎo)入的模塊,如果沒有,會(huì)報(bào)錯(cuò)異常
二 解答題 (每題2分 ,共 12分)
1 請(qǐng)描述列表和元組之間的區(qū)別,以及分別在他們之間轉(zhuǎn)型?
List 和tuple 區(qū)別
不同點(diǎn):
1 定義的方式
list[] tuple()
2 是否可變
list可變 tuple() 不可變
3 list中有 append(),insert() 函數(shù),tuple中沒有
相同點(diǎn):
都是有序的集合(容器)
List轉(zhuǎn)為tuple:
temp_list = [1,2,3,4,5]
將temp_list進(jìn)行強(qiáng)制轉(zhuǎn)換:tuple(temp_list)
tuple 轉(zhuǎn)為list:
temp_tuple = (1,2,3)
方法類似,也是進(jìn)行強(qiáng)制轉(zhuǎn)換即可:list(temp_tuple)
2 定義函數(shù)的規(guī)則?
1函數(shù)代碼塊以 def 關(guān)鍵詞開頭,后接函數(shù)標(biāo)識(shí)符名稱和圓括號(hào)()。
2任何傳入?yún)?shù)和自變量必須放在圓括號(hào)中間。圓括號(hào)之間可以用于定義參數(shù)。
3函數(shù)的第一行語句可以選擇性地使用文檔字符串—用于存放函數(shù)說明。
4函數(shù)內(nèi)容以冒號(hào)起始,并且縮進(jìn)。
5 return [表達(dá)式] 結(jié)束函數(shù),選擇性地返回一個(gè)值給調(diào)用方。不帶表達(dá)式的return相當(dāng)于返回 None。
3 __new__和__init__的區(qū)別?__new__是一個(gè)靜態(tài)方法,而__init__是一個(gè)實(shí)例方法.
__new__方法會(huì)返回一個(gè)創(chuàng)建的實(shí)例,而__init__什么都不返回.
只有在__new__返回一個(gè)cls的實(shí)例時(shí)后面的__init__才能被調(diào)用.
當(dāng)創(chuàng)建一個(gè)新實(shí)例時(shí)調(diào)用__new__,初始化一個(gè)實(shí)例時(shí)用__init__.
4 read,readline和readlines之間的區(qū)別?
read 讀取整個(gè)文件
readline 讀取下一行,使用生成器方法
readlines 讀取整個(gè)文件到一個(gè)迭代器以供我們遍歷
5 去掉old_list = [1,1,1,3,4 ] 中的重復(fù)元素
new_list = list(set(old_list))
6 用兩個(gè)元素之間有對(duì)應(yīng)關(guān)系的list構(gòu)造一個(gè)dict
names = ['jianpx', 'yue'] ages = [23, 40] m = dict(zip(names,ages))
三 編程題(每題6分 共18分)
1 利用條件運(yùn)算符的嵌套來完成此題:學(xué)習(xí)成績(jī)>=90分的同學(xué)用A表示,60-89分之間的用B表示,60分以下的用C表示
def main(): s = int(input('請(qǐng)輸入成績(jī):')) if s>=90: grade = 'A' elif s>=60: grade = 'B' else: grade = 'C' print grade, main()
2 輸入一行字符,分別統(tǒng)計(jì)出其中英文字母、空格、數(shù)字和其它字符的個(gè)數(shù)。
def main(): s = input('input a string:') letter = 0 #統(tǒng)計(jì)字母 space = 0#統(tǒng)計(jì)空格 digit = 0 #統(tǒng)計(jì)數(shù)字 other = 0 #統(tǒng)計(jì)其他字符 for c in s: if c.isalpha(): letter+=1 elif c.isspace(): space+=1 elif c.isdigit(): digit+=1 else: other+=1 print(“字母:”,letter,”空格:”,space,”數(shù)字:”,digit,”其他字符:”,other) main()
3 對(duì)10個(gè)數(shù)進(jìn)行排序
l = [] for i in range(10): l.append(int(input('Input a number:'))) #可以直接使用sort函數(shù):l.sort() #也可以自己寫排序代碼(選擇排序) for i in range(9): for j in range(i+1,10): if l[j]<l[i]: temp = l[j] l[j] = l[i] l[i] = temp print l
2,4,6,7,8,9,3,1,4
到此這篇關(guān)于python 筆試題(附帶答案)的文章就介紹到這了,更多相關(guān)python筆試題內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!
相關(guān)文章
- 這篇文章主要介紹了2019Python必刷面試題 (110道),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2020-02-07
- 這篇文章主要介紹了常見Python面試題目整理小結(jié),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2020-02-07
python后端開發(fā)工程師考證試題(小結(jié))
這篇文章主要介紹了python后端開發(fā)工程師考證試題(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起2020-01-15- 這篇文章主要介紹了2019年最新的Python面試題(小結(jié)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-12-30
- 本文給大家分享Python高頻面試題及其答案,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2019-12-26
- 這篇文章主要介紹了Python爬蟲工程師面試常見問題,總結(jié)分析了Python爬蟲工程師面試過程中常遇到的各種問題與相應(yīng)知識(shí)點(diǎn),并給出了參考建議,需要的朋友可以參考下2019-12-26
- 這篇文章主要介紹了12個(gè)Python程序員面試必備問題與答案,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-12-25
- 這篇文章主要介紹了2019Python必刷面試題(小結(jié)),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-12-25
python面試流程與經(jīng)驗(yàn)小結(jié)
這篇文章主要介紹了python面試流程與經(jīng)驗(yàn),總結(jié)分析了Python面試過程中的各個(gè)環(huán)節(jié)、所遇到的問題以及相關(guān)注意事項(xiàng),需要的朋友可以參考下2019-11-16- 這篇文章主要介紹了Python經(jīng)典面試題與參考答案,總結(jié)分析了Python面試中各種常見的概念、數(shù)據(jù)結(jié)構(gòu)、算法等相關(guān)操作技巧,需要的朋友可以參考下2019-11-04