Python基礎語法題庫


引言:

  語法練習包括Python基礎語法、數據類型、字符編碼和簡單文件操作等內容。

 

正文(參考答案附錄在題目下方):

1、Python 里用來告知解釋器跳過當前循環中的剩余語句,然后繼續進行下一輪循環,此關鍵詞是__。
continue
View Code

 

2、Python的設計具有很強的可讀性,相比其他語言具有的特色語法有以下選項,正確的是(): A 交互式 B 解釋型 C 面向對象 D 服務端語言
ABC
View Code

 

3、Python中==運算符比較兩個對象的值,下列選項中哪一個是is比較對象的因素(): A id() B sum() C max() D min()
    A
View Code

 

4、Python崇尚優美、清晰、是一個優秀並廣泛使用的語言,得到行內眾多領域的認可,下列屬於Python主要應用領域的是:()
A   系統運維
B   科學計算、人工智能
C   雲計算
D   金融量化
ABCD
View Code

 

5、當知道條件為真,想要程序無限執行直到人為停止的話,可以需要下列哪個選項():
A   for
B   break
C   while
D   if
    C
View Code

 

6、下列實例變量a值為字符串"hello",b變量值為"mooc",下列選項屬於正確字符串運算的是():
A   a+b
B   a*2
C   'h' in a
D   print("Learn python in %s"%('mooc'))
ABCD
View Code

 

7、求比10小且大於或等於0的偶數,例題如下:

x = 10
while x:
    x = x-1
    if x%2!=0:
        ____   
    print (x)

A   break
B   continue
C   yield
D   flag
    B
View Code

 

8、在python中,數字類型共包括以下哪幾種類型():
A   int
B   float
C   complex
D   bool
ABC
View Code

 

9、以下選項為整數類型的有():
A   3
B   3.1
C   -3
D   0
ACD
View Code

 

10、python3解釋器執行long(10)的結果為():
A   10L
B   10l
C   NameError: name 'long' is not defined 
D   1
C
#python3中無long類型,python2中long類型,在python2中輸出 10
View Code

 

11、在python2中,如果變量x = 3,那么,請選擇x /= 3的結果為():

A   3
B   0
C   1.0  
D   1
D
 # python3中輸出 1.0(相除結果均為小數),只有使用 //(地板除)才可得到整數(兩數均為整數時)
# python2除數中有一數為小數時,結果為小數;都為整數時,則輸出整數
View Code

 

12、下列選項中,數值最小的是(): 

A    十進制數 55
B    二進制數 110100
C    八進制數 101
D    十六進制數 33
    D
View Code

 

13、python2解釋器在執行2L的8次方的結果為():

A   256   
B   256L 
C   256l
D   報錯 
B
# python2中有long類型,輸出時為大寫的 L(小寫的l容易誤認)
#python3報錯,無long類型
View Code

 

14、下列字符中對應ASCII碼數值最小的是哪個選項():

A  B
B  a
C  k
D  M
A
# B的值為66,a的值為97,C的值為99,M的值為77,
View Code

 

15、python解釋器執行 a = """""'aaa'"""""表達式的結果為( ):

A   \'aaa\''
B   '""\'aaa\''
C   語法錯誤
D   我不知道
    B
View Code

 

16、python解釋器執行"金額:"¥%f 元" % 1.5000 的結果為( ):

A   '金額:¥1.5 元'
B   '金額:¥1.500 元'
C   '金額:¥1.500000 元'
D   '金額:¥1.50000 元'
C
# %f只能占位浮點數,%.xf 則是精確至小數點后x位,默認是6位
# %s  字符串占位符
View Code

 

17、在python中的占位符中,請你選出不屬於占位符的選項( ):

A   %d  
B   %e  
C   %E  
D   %z
D
%d  整數占位符,即使是原數字為浮點數他也會強制轉換變成整數
%e  將整數、浮點數轉換成科學計數法,並將其格式化到指定位置(小寫e)
%E  將整數、浮點數轉換成科學計數法,並將其格式化到指定位置(大寫E)
View Code

 

18、在python解釋器中,執行 '%f' % 1.12345678的結果為( ):

A   '1.1234567'
B   '1.1234578'
C   '1.12345678'
D   '1.123457'  
D
# '1.123457'   # 四舍五入
View Code

 

19、python3解釋器執行 not 1 and 1的結果為( ):

A   True
B   False
C   0
D   1
    B
View Code

 

20、 根據漢字國標GB2312-80的規定,1kb存儲容量能存儲的漢字機內碼的個數是( ):
A 128
B 256
C 512
D 1024
C
# 漢字的內碼也就是漢字的內部碼,又稱漢字機內碼。_x000D_ 無論用何種輸入碼,計入計算機后就立即被轉換為機內碼進_x000D_ 行存儲、運算和傳送。規則是將國際碼的高位字節、低位字_x000D_ 節各自加上128(十進制)或80(十六進制)。_x000D_ 例如:“中”字的內碼以十六進制表示時為D6D0。這樣做的目_x000D_ 的是使漢字內碼區別於西文的ASCII碼,因為每個西文字母的_x000D_ ASCII碼的高位均為0,而漢字內碼的每個字節的高位均為1。

# 簡單理解就是按照漢字國標GB2312-80的規定,一個漢字字符占2Bytes,
而 1kb = 1024Bytes  = 2*512,即512個漢字字符
View Code

 

21、在信息組織和存儲中,最基本的單位是( ):
A 字節(Byte)
B 二進制位(bit)
C 字(Word)
D 雙字(Double Word)
B
# 1 Byte=8bit 位是計算機數據中最小單元,位的值只會是0或1。
View Code

 

22、設任意一個十進制整數D,轉換成二進制數為B,根據數制的概念,下列敘述中正確的是()。 A 數字B的位數<數字D的位數 B 數字B的位數≤數字D的位數 C 數字B的位數≥數字D的位數 D 數字B的位數>數字D的位數
C # 在數值轉換中,基數越大,位數越少。當為0、1時,位數可以相等。
View Code

 

23、字長為7位的無符號二進制整數能表示的十進制整數范圍是()。 A 0~128 B 0~255 C 0~127 D 1~127
C # 無符號二進制數的第一位可為0,_x000D_ 所以當全為0時最小值為0,當全為1時,_x000D_ 最大值為2**7-1=127。
View Code

 

24、下列選項中,八進制數24轉換成二進制數正確的是()。 A 00101100 B 00010100 C 00011100 D 00011101
B # 24(8)=2*8**1+4*18**0=20(10) 利用“除k取余法”是將十進制數除以2, 然后將商繼續除以2,直到商為0, 最后將依次所得的余數倒序排列即可得到答案。 例如:8÷2=4……0 4÷2=2……0 2÷2=1……0 1÷2=0……1 故,8(10)--->1000(2)
View Code

 

25、將二進制數10010101,轉換成十進制數,正確的選項為()。 A 139 B 141 C 149 D 151
C # 二進制是用0、1表示的數:11101=1*2(4)+1*2(3)+1*2(2)+0*2(1)+1*2(0)算成平時用的數字(十進制)即可
View Code

 

26、關於下面對unicode作用的描述,正確的是()。 A 能夠使計算機對跨語言的文本進行轉換及處理 B 能夠減少存儲大小,節約存儲成本 C 能夠使計算機對跨平台的文本進行轉換及處理 D 能夠使計算機處理文本速度更快
AC # unicode主要是解決跨語言和跨平台文本的編碼問題。
View Code

 

27、下列對於字符編碼的發展歷史節點,正確的是()。 A ASCII--->GBK--->UTF-8--->Unicode B ASCII--->Unicode--->GBK--->UTF-8 C ASCII--->GBK--->Unicode--->UTF-8 D ASCII--->Unicode--->UTF-8--->GBK
C # 最初的ASCII,到中國的gbk,為了滿足支持全球的語言到Unicode,為了解決存儲問題,最后到UTF-8。
View Code

 

28、假設,現在有一個UTF-8編碼的文件,需要轉碼成GBK編碼的文件,下列操作流程正確的是()。 A encode('gbk')--->decode('utf-8') B encode('utf-8')--->decode('gbk') C decode('gbk')--->encode('utf-8') D decode('utf-8')--->encode('gbk'
D # encode編碼,decode解碼,文件是什么方式編碼的,就應以什么方式解碼,故,應先以UTF-8解碼成Unicode,然后編碼成GBK,此題選D
View Code

 

29、 Python的解釋器本身也可以看作是個程序,並且有多種解釋器版本,下列選項屬於Python解釋器的是(): A Cpython B Ipython C PyPy D Jython
ABCD # python的幾種解釋器,分別是Cpython、Ipython、PyPy、Jython
View Code

 

30、編程語言通常有固定的后綴,如golang文件是"test.go",Python文件后綴通常定義為以____結尾。

.py
View Code

 

31、安裝好Python之后,可以有三種方式運行,通過命令行窗口進入,執行Python文件,集成開發環境,下列屬於運行方式的是(): A 瀏覽器中運行 B 交互式解釋器 C 命令行腳本 D Pycharm
BCD #Python可以通過交互式解釋器、命令行腳本、IDE開發環境運行,瀏覽器無法運行python文件
View Code

 

32、 Python解釋器在主提示符或從屬提示符后輸入中斷符____就會取消當前輸入,回到主提示符,會拋出一個KeyboardInterrupt異常。 A control-c B ctrl-z C ctrl-o D alt-c
A # control(ctrl) -c可以中斷輸入,程序運行
View Code

 

33、作為學習python的開始,需要事先搞清楚,什么是編程語言?下列選項正確的是(): A 編程語言是程序員與計算機溝通的介質 B 能夠被計算機識別的表達方式即是編程語言 C 編程即程序員根據需求把自己的思想流程按照某種編程語言的語法風格編寫下來 D 人類編程控制計算機工作
ABCD # 程序員通過自己的思想流程轉換為計算機識別的表達方式即是編程語言
View Code

 

34、在python中,字符串s = 'abc',那么執行表達式s+'d'之后,s的打印結果是什么(): A 'abc' B 'abcd' C 'abc+d' D 報錯
A # 'abc',字符串是不可變數據類型,所以字符串s還是不變,但字符串相加后的結果是 'abcd’
View Code

 

35、關於字符串的replace方法,你認為正確的選項是(): A replace方法如果沒有替換成功則報錯 B replace方法如果沒有替換成功則將原字符串返回 C replace方法如果替換成功返回新的字符串 D replace方法如果替換成功,返回原字符串
BC # replace方法如果替換不成功則將原字符串返回,替換成功則返回新的字符串,實例如下:
a = 'abadaf'
print(a.replace('a','A',2)) # AbAdaf
print(a.replace('e','E')) # abadaf
print(a) # abadaf 不改變原字符串的模樣
View Code

 

36、python解釋器執行'1234'.find('5')的結果是(): A -1 B None C 空 D 報錯
A b = 'abdegha'
print(b.find('b'),b.find('c')) # 1 -1 從下標0開始,查找在字符串里第一個出現的子串:返回結果
print(b.find('a',1),b.find('a',1,6)) # 6 -1 從下標1開始,查找在字符串里第一個出現的子串:返回結果6 # find() 方法檢測字符串中是否包含子字符串 str ,如果指定 beg(開始) 和 end(結束) 范圍,則檢查是否包含在指定范圍內,如果包含子字符串返回開始的索引值,否則返回-1。
''' find()方法語法: str.find(str, beg=0, end=len(string)) str -- 指定檢索的字符串 beg -- 開始索引,默認為0。 end -- 結束索引,默認為字符串的長度。 如果包含子字符串返回開始的索引值,否則返回-1。 '''
View Code

 

37、python解釋器執行 'abbacabb'.strip('ab') 的結果是(): A 'aca' B 'ca' C 'c' D 語法錯誤
C # strip方法匹配兩側所有的符合條件的字符(括號內指定字符串中的每個字符)
View Code

 

38、python的join方法用於將序列中的元素以指定的字符連接生成一個新的字符串,那么下列選中中正確的是(): A 語句''.join('a','b')是合法的 B 語句''.join(['a','b'])是合法的 C 語句''.join([1,2,3])是合法的 D 語句''.join(['1','2','3'])是合法的    
BD # join方法只能接受一個成員參數,並且無法連接int類型的數據,實例如下:
>>> print(''.join('a','b','c')) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: join() takes exactly one argument (3 given) >>> print(''.join([1,2,3])) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: sequence item 0: expected str instance, int found
View Code

 

39、python解釋器執行 '\n'.join(('ab','cd','we','xy'))的結果為(): A 報錯 B 'ab\cd\we\xy' C 'abcdwexy' D 'ab\ncd\nwe\nxy'
D # join會把換行符當成普通連接字符進行連接,通過換行連接,實例如下:

>>> print('\n'.join(('ab','cd','we','xy'))) ab cd we xy
View Code

 

40、python2解釋器執行 u'abc'.isnumeric()的結果是__ 。
False # isdigit方法判斷字符串里全為數字才返回True,而且,python2要通過字符串前加u才能成功判斷
View Code

 

41、python3解釋器執行'AB2C3D'.lower().title()的結果是(): A 'Ab2c3d' B 'Ab2C3D' C 'AB2C3D' D 語法錯誤
B # title方法將字符串內每個連續字母的首字母大寫,其余小寫,數字后面的字母被title當成首字母大寫了
View Code

 

42、 現有列表 l=[1,2,3,4,5,6,7,8,9,0],那么python3解釋器執行 l[3::-1] 的結果是__ 。
[4, 3, 2, 1] # 從索引為3的地方開始,依次向前取值
View Code

 

43、現有列表l=[1,2,3,4,5,6,7,8,9,0],那么python3解釋器執行 l.insert(-2,'b')后執行 l[-2]的結果是__。 
9
# insert將元素插入到列表對應位置的前一位,插入后列表元素為[1,2,3,4,5,6,7,8,'b',9,0]。
View Code

 

44、現有列表l=[1,2,3,4,5,6,7,8,9,0],那么python3解釋器執行l[1:3]='abc'后執行 l[2]的結果是(): A 4 B b C abc D c
B # 把l[1:3]的值為2,3 把這兩個值替換為a,b,c后,列表[1, 'a', 'b', 'c', 4, 5, 6, 7, 8, 9, 0],那前四個值為,1,'a','b','c'
View Code

 

45、在python中,關於reverse方法的說法中,你認為正確的是( ): A reverse方法返回新的列表 B reverse方法沒有返回值 C reverse方法對列表內的所有元素進行反向排序 D reverse方法只對一級元素進行反向排序
BD # 實例如下:
>>> L = ['a','d','b',1,2,3,[4,5,6]] >>> print(L.reverse(),L) (None, [[4, 5, 6], 3, 2, 1, 'b', 'd', 'a'])
View Code

 

46、現有代碼t=('a'),在python3解釋器中查看type(t)的到的結果為( ): A <class 'str'> B <class 'tuple'> C (class 'str') D (class 'tuple')
A #此時python解釋器將t識別為字符串,哪怕它穿着衣服(套着括號) # >>> t = ('a') # >>> print(type(t)) # <class 'str'>
View Code

 

47、現有代碼 d={},在python3解釋器中執行 d[([1,2])] = 'b'得到的結果為(): A TypeError: unhashable type: 'list' B {([1, 2]): 'b'} C {(1): 'b'} D 以上說法都不對
A # 只有當元組內的所有元素都為不可變類型的時候,才能成為字典的key,實例如下: # >>> d ={} # >>> d[([1,2])] = 'b' # Traceback (most recent call last): # File "<stdin>", line 1, in <module> # TypeError: unhashable type: 'list'
View Code

 

48、python3解釋器執行 d = {(1,[2]):'a',(1,2):1}后查看d的結果是( ): A {(1,[2]):'a',(1,2):1} B TypeError: unhashable type: 'list' C {(1,2):'a',(1,2):1} D 以上說法都不對
B # 字典的key要為不可變類型 # >>> d = {(1,[2]):'a',(1,2):1} # Traceback (most recent call last): # File "<stdin>", line 1, in <module> # TypeError: unhashable type: 'list'
View Code

 

49、現有d = {'a': 'b',1:1,2:2},python3解釋器執行d.pop()的結果是(): A 報錯 B (1,1) C ('a':'b') D 以上都不對
A # pop方法需要指定刪除的key,實例如下:
>>> d = {'a': 'b',1:1,2:2} >>> d.pop('a') 'b'
>>> d {1: 1, 2: 2} >>> d.pop() Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: pop expected at least 1 arguments, got 0
View Code

 

50、python3解釋器執行for x in {'a':'b','c':'d'}:print(x)的結果是什么(): A b c B a c C b d D a b
B # 打印字典的key,實例如下:
>>> for x in {'a':'b','c':'d'}: ... print(x) ... a c
View Code

 

51、python3解釋器執行 for k,v in {1:'a',2:'b'}:print(k,v)的結果是(): A 1 b B b 1 C 1  'b' D TypeError: 'int' object is not iterable
D # 實例如下:
>>> for k,v in {1:'a',2:'b'}: ... print(k,v) ... Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: cannot unpack non-iterable int object
View Code

 

52、有集合 s = {1,2,3},python3解釋器執行 del s[2]的結果為( ): A 3 B 2 C {1,2} D TypeError: 'set' object doesn't support item deletion 
D # 集合不能索引取值
>>> s = {1,2,3} >>> del s[2] Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: 'set' object doesn't support item deletion
View Code

 

53、python3解釋器執行{1, 2, 'a'} | {2, 3, 4}的結果為(): A {2,3,4} B {1, 2, 3, 4, 'a'} C {1,2,3,4} D {2,3,4,'a'}
B # “ | ” 表示並集,即求兩個集合的所有元素
View Code

 

54、python3解釋器執行 {2, 3, 4}.symmetric_difference({1, 2, 'a'})的結果為__。
{3, 1, 'a', 4} # symmetric_difference方法表示求集合的對稱補集,就是各自求了一次補集,然后加在一起的結果
View Code

 

55、python3解釋器執行 {2, 3, 4}.issubset({2, 3, 4})的結果為__。
True # issubset() 方法用於判斷集合的所有元素是否都包含在指定集合中,即前者是否為后者的子集,如果是則返回 True,否則返回 False。此處二者互為子集,實例如下:
>>> {1,2,3,4}.issubset({2,3,4}) False >>> {1,2,3,4}.issubset({1,2,3,4,5}) True >>> {2,3,4}.issubset({2,3,4}) True
View Code

 

56、python3解釋器執行d = dict.fromkeys(['apple', 'orange'],10)得到的結果是__ 。
{'apple': 10, 'orange': 10} # Python 字典 fromkeys() 函數用於創建一個新字典,以序列 seq 中元素做字典的鍵,value 為字典所有鍵對應的初始值。該方法返回一個新字典。實例如下:
>>> dic1 = dict.fromkeys((1,2,3)) >>> dic1 {1: None, 2: None, 3: None}  # 不指定鍵值時,默認為None
>>> dic2 = dict.fromkeys((1,2,3),'hello') >>> dic2 {1: 'hello', 2: 'hello', 3: 'hello'} # 初始化鍵值為“hello”
View Code

 

57、 在python中,一共用多少位的精度來表示一個浮點數( ): A 128 B 64 C 53 D 32
B # 知識點擴展
int(x [,base ]) 將x轉換為一個整數 long(x [,base ]) 將x轉換為一個長整數 float(x ) 將x轉換到一個浮點數 complex(real [,imag ]) 創建一個復數 str(x ) 將對象 x 轉換為字符串 repr(x ) 將對象 x 轉換為表達式字符串 eval(str ) 用來計算在字符串中的有效Python表達式,並返回一個對象 tuple(s ) 將序列 s 轉換為一個元組 list(s ) 將序列 s 轉換為一個列表 chr(x ) 將一個整數轉換為一個字符 unichr(x ) 將一個整數轉換為Unicode字符 ord(x ) 將一個字符轉換為它的整數值 hex(x ) 將一個整數轉換為一個十六進制字符串 oct(x ) 將一個整數轉換為一個八進制字符串 
View Code

 

58、請選擇python解釋器執行'123'.isdigit() 方法返回的結果(): A True B False C 'True' D 因語法錯誤而報錯
True # isdigit() 方法檢測字符串是否只由數字組成。 # 語法:str.isdigit() # 返回值: 如果字符串只包含數字則返回 True 否則返回 False。 # 實例如下:
>>> print('123'.isdigit() ) True >>> print('abc123'.isdigit()) False
View Code

 

59、python3解釋器執行'oldboy'.center(8,'-')的結果為__。 
--mgwl--
# center() 返回一個原字符串居中,並使用空格填充至長度 width 的新字符串。默認填充字符為空格。 # 語法:str.center(width[, fillchar]) # 參數: width -- 字符串的總寬度 fillchar -- 填充字符 # 實例如下:
>>> str = 'mgwl'
>>> print(str.center(8,'-')) --mgwl--
View Code

 

60、python解釋器執行'{0},{2},{1}'.format('a','b','c')的結果為(): A 'a,b,c' B 'a,c,c' C 'a,c,b' D 'c,c,b'
C # format 函數可以接受不限個參數,位置可以不按順序,而可以指定位置傳值 # 實例如下:
>>>"{} {}".format("hello", "world")    # 不設置指定位置,按默認順序
'hello world'
 
>>> "{0} {1}".format("hello", "world")  # 設置指定位置
'hello world'
 
>>> "{1} {0} {1}".format("hello", "world")  # 設置指定位置
'world hello world'
View Code

 

61、python的join方法用於將序列中的元素以指定的字符連接生成一個新的字符串,那么下列選中中正確的是(): A語句''.join('a','b')是合法的 B語句''.join(['a','b'])是合法的 C語句''.join([1,2,3])是合法的 D語句''.join(['1','2','3'])是合法的
BD # join方法只能接受一個成員參數,無法連接int類型的數據,實例如下:
>>> print(''.join('a','b))
  File "<stdin>", line 1
    print(''.join('a','b))
                         ^ SyntaxError: EOL while scanning string literal >>> print(''.join(['a','b'])) ab >>> print(''.join([1,2,3])) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: sequence item 0: expected str instance, int found >>> print(''.join(['1','2','3'])) 123
View Code

 

62、 python解釋器執行'-'.join({'a':'b','c':'d'})的結果為(): A 'a-c' B 'a-b-c-d' C 'b-d' D 報錯
A # join的對象是字典的時候,只會連接字典的key,實例如下:
>>> print('-'.join({'a':'b','c':'d'})) a-c
View Code

 

63、 python中,判斷一個字符串是否全由數字組成的方法為str.isnumeric,那么,python2和python3都執行'123'.isnumeric()得到的結果為(): A Ture,False B False,True C 報錯,True D True,報錯
C # isnumeric方法只針對unicode對象,所以python2執行會報錯,想要不報錯,字符串之前加u,實例如下:

# python2.7下
>>> print('123'.isnumeric()) Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'str' object has no attribute 'isnumeric'

>>> print(u'123'.isnumeric()) True # python3下
>>> print('123'.isnumeric()) True
View Code

 

64、python3解釋器執行'AB2C3D'.lower().title()的結果是(): A 'Ab2c3d' B 'Ab2C3D' C 'AB2C3D' D 語法錯誤
B # title方法將字符串內每個連續字母的首字母大寫,其余小寫,數字后面的字母被title當成首字母大寫了,實例如下:
>>> print('AB2C3D'.lower().title()) Ab2C3D
View Code

 

65、 python3解釋器執行'abcdd'.endswith('cd')的結果是__。
False # endswith方法是檢查字符串是否以指定字符結尾,實例如下:
>>> print('abcdd'.endswith('cd')) False >>> print('abcdd'.endswith('dd')) True
View Code

 

66、現有列表l=[1,2,3,4,5,6,7,8,9,0],那么python3解釋器執行l[1::2] 的結果是__。
[2, 4, 6, 8, 0] # 從索引為1的地方開始,以索引+=2的方式取值,實例如下:
>>> l=[1,2,3,4,5,6,7,8,9,0] >>> print(l[1::2]) [2, 4, 6, 8, 0]
View Code

 

67、現有列表l=[1,2,3,4,5,6,7,8,9,0],那么python3解釋器執行 l.insert(2,'a')后執行 l[3]的結果是__。
3
# insert把 ‘a',插入到l索引為2的地方,前面的值不變,后面的值往后移一個位置,所以 l[3]=3。實例如下:
>>> l=[1,2,3,4,5,6,7,8,9,0] >>> l.insert(2,'a') >>> print(l) [1, 2, 'a', 3, 4, 5, 6, 7, 8, 9, 0] >>> l.insert(-2,'a') >>> print(l) [1, 2, 'a', 3, 4, 5, 6, 7, 8, 'a', 9, 0]
View Code

 

68、現有列表l=[1,2,3,4,5,6,7,8,9,0],那么python3解釋器執行 l.insert(-2,'b')后執行 l[-1]的結果是__。 
9
# insert方法將指定元素插入到指定位置原元素的前一位,實例如下:
>>> l=[1,2,3,4,5,6,7,8,9,0] >>> l.insert(-2,'b') >>> print(l[-2]) 9
>>> print(l) [1, 2, 3, 4, 5, 6, 7, 8, 'b', 9, 0] >>> l.insert(2,'a') >>> print(l) [1, 2, 'a', 3, 4, 5, 6, 7, 8, 'b', 9, 0]
View Code

 

69、python3解釋器執行 for i,v in enumerate([0,1,2],2):print(i,v)和 for i,v in enumerate([0,1,2]):print(i,v)的結果,你認為對的選項是(): A 結果一致 B 第一個報錯 C 第一個序號從2開始,第二個從0開始 D 兩個都報錯
C # enumerate() 函數用於將一個可遍歷的數據對象(如列表、元組或字符串)組合為一個索引序列,同時列出數據和數據下標,一般用在 for 循環當中。

# Python 2.3. 以上版本可用,2.6 添加 start 參數。 # enumerate() 方法的語法: enumerate(sequence, [start=0]) # sequence -- 一個序列、迭代器或其他支持迭代對象 ;start -- 下標起始位置。 # 實例如下:
>>> for i,v in enumerate([0,1,2],2): ... print(i,v) ... 2 0 3 1
4 2
>>> for i,v in enumerate([0,1,2]): ... print(i,v) ... 0 0 1 1
2 2
View Code

 

70、 python3解釋器執行l=[1,4,3].extend(list())后l的值是(): A [1,4,3] B [1,4,3,[]] C [] D None
None # extend方法並無返回值,所以l是 None # extend() 函數用於在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)。 # 方法:list.extend(seq) 該方法沒有返回值,但會在已存在的列表中添加新的列表內容。 # 實例如下:
la = [1,2,3] lb = [5,6,7] la.extend(lb) print('列表la:',la) # 列表la: [1, 2, 3, 5, 6, 7]
View Code

 

71、python3解釋器執行l=[1,4,3],l.extend(l)后 l的值是__。
[1, 4, 3, 1, 4, 3] # 實例如下:
l=[1,4,3] l.extend(l) print(l) # [1, 4, 3, 1, 4, 3] 
View Code

 

72、現有列表l=[2,3,['a','b','c'],1],那么python3解釋器執行l[2]=2后l的值是__。
[2, 3, 2, 1] # l[2]是['a','b','c'] ,將 ['a','b','c'] 替換為 2 # 實例如下 :
l=[2,3,['a','b','c'],1] l[2] = 2
print(l) # [2, 3, 2, 1] 
View Code

 

73、現有列表l=[2,3,['a','b','c'],1],那么python3解釋器執行l[2].extend('de')后l的值是__。
[2, 3, ['a', 'b', 'c', 'd', 'e'], 1] # l[2]是['a','b','c'] ,在['a','b','c'] 里追加 ‘d','e', 兩個元素。 # 實例如下:
l=[2,3,['a','b','c'],1] l[2].extend('de') print(l) # [2, 3, ['a', 'b', 'c', 'd', 'e'], 1]
View Code

 

74、python3解釋器對列表[1,2,[3,4],5,6]使用reverse方法執行的結果為(): A [6, 5, [3, 4], 2, 1] B [6, 5, [4, 3], 2, 1] C [6, 5, 2, 1, [3, 4]] D 報錯
[6, 5, [3, 4], 2, 1] # reverse方法對列表內的所有元素進行反向排序,而內嵌的2級元素列表內的元素不會被反向排序 # 實例如下:
L  = [1,2,[3,4],5,6] L.reverse() print(L) # [6, 5, [3, 4], 2, 1]
View Code

 

75、python3解釋器執行,下面的示例代碼后,l2的結果是(): >>> import copy >>> l1 = [1,2,[3,4]] >>> l2 = copy.deepcopy(l1) >>> l1[2] = 'a'
>>> l2
[1,2,[3,4]] # copy.deepcopy為深拷貝,完全的把l1拷貝了一份,所以l1怎么變動都不會跟l2有關系 # 實例如下:
>>> import copy >>> l1 = [1,2,[3,4]] >>> l2 = copy.deepcopy(l1) >>> l1[2] = 'a'
>>> l2 [1, 2, [3, 4]] >>> l1 [1, 2, 'a'] # 擴展,copy和deepcopy的區別:
>>> import copy >>> l1 = [1,2,[3,4]] >>> l2 = l1.copy() # # 淺拷貝
>>> l3 = copy.deepcopy(l1) # # 深拷貝
>>> l1 [1, 2, [3, 4]] >>> l2 [1, 2, [3, 4]] >>> l3 [1, 2, [3, 4]] >>> l1.append('a') >>> l2.append('a') >>> l3.append('a') >>> l1 [1, 2, [3, 4], 'a'] >>> l2 [1, 2, [3, 4], 'a'] >>> l3 [1, 2, [3, 4], 'a'] >>> l1.append('a') >>> l1 [1, 2, [3, 4], 'a', 'a'] >>> l1[2].append('b') >>> l2[2].append('b') >>> l3[2].append('b') >>> l1 [1, 2, [3, 4, 'b', 'b'], 'a', 'a'] >>> l2 [1, 2, [3, 4, 'b', 'b'], 'a'] # copy后的第一層列表不受原列表影響,第二層列表仍受原列表的影響
>>> l3 [1, 2, [3, 4, 'b'], 'a'] # deepcopy后的列表完全獨立,不受原列表影響
View Code

 

76、python3解釋器執行下面的示例代碼后,l2的結果是(): >>> l1 = [1,2,[3,4]] >>> l2 = copy.deepcopy(l1) >>> l1[2] = 'a'
>>> l2 A [1, 2, ['a', 4]] B [1, 2, 'a'] C [1, 2, [3, 4]] D 報錯
D # 沒有導入copy模塊(需要使用 import 引入),報copy變量沒有定義的錯誤
View Code

 

77、在python中,關於copy模塊的說法,你認為對的是( ): A copy模塊為python的內置模塊,用時無需導入 B 我們可以通過變量復制操作代替copy C copy.copy 淺拷貝 只拷貝父對象,不會拷貝對象的內部的子對象 D copy.deepcopy 深拷貝 拷貝對象及其子對象
CD
View Code

 

78、python3解釋器執行下面示例代碼后,l2的結果是(): >>> l2 = l1 = [1,2,[(3,4),5]] >>> l1[2][0] = 'a'
>>> l2
[1, 2, ['a', 5]] # 鏈式復制,相當於copy.copy # 實例如下:
l2 = l1 = [1,2,[(3,4),5]] l1[2][0] = 'a'
print(l2) # [1, 2, ['a', 5]]
View Code

 

79、現有代碼 t = (1,2),在python3解釋器中執行t * 3 得到的結果為(): A 語法錯誤 B (1, 2, 1, 2, 1, 2) C (2, 4, 2, 4) D 以上說法都不對
B # 字符串、列表和元祖支持此種方法復制數據,字典和集合不行 # 實例如下:
>>> str = 'hello'
>>> str*3
'hellohellohello'
>>> t = (1,2) >>> t*3 (1, 2, 1, 2, 1, 2) >>> l = [1,2] >>> l*3 [1, 2, 1, 2, 1, 2] >>> t = {1,2} >>> t*3 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for *: 'set' and 'int'
>>> dic = {1:'1',2:'2'} >>> dic*3 Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: unsupported operand type(s) for *: 'dict' and 'int'
View Code

 

80、在python3.6.2版本的解釋器中,我們分別查詢長度為一百萬的列表和字典的靠后的元素,就查詢速度來說(): A 列表快 B 字典快 C 一樣快 D 元組快
B # 字典快,字典為映射關系存儲數據,一般的,不管字典多大,查詢速度相差無幾,而列表查詢第一個元素和最后一個元素的速度天差地別
View Code

 

81、 python3解釋器執行 d = {1:1,2:1}后查看d的結果是__。
{1: 1, 2: 1} # 字典的value可以相同,實例如下:
>>> d = {1:1,2:1} >>> d {1: 1, 2: 1}
View Code

 

82、現有 d = {},python3解釋器執行d['a'] = 'b'后d的結果是__。
{'a': 'b'} # 實例如下:
>>> d = {} >>> d['a'] = 'b'
>>> d {'a': 'b'}
View Code

 

83、現有 d = {},python3解釋器執行d[(1,2)] = ({3,(4)})后d的結果是(): A {(1, 2): {3, 4}} B {(1, 2): ({3, 4})} C 報錯 D 以上都不對
A # 為字典添加了一對鍵值對 # 實例如下:
>>> d = {} >>> d[(1,2)] = ({3,(4)}) >>> d {(1, 2): {3, 4}}
View Code

 

84、現有字典d1 = {'a':1, 'b':2, 'c':3}和d2 = {1:'a', 'b':4, 'd':3},那么python3解釋器執行d1.update(d2)后d2的結果是__。
{1: 'a', 'b': 4, 'd': 3} # update方法不影響被更新的字典 # 字典 update() 函數把字典參數 dict2 的 key/value(鍵/值) 對更新到字典 dict 里。 # update() 方法語法:dict.update(dict2) # 參數:dict2 -- 添加到指定字典dict里的字典。 # 返回值:該方法沒有任何返回值。 # 實例如下:
>>> d1 = {'a':1, 'b':2, 'c':3} >>> d2 = {1:'a', 'b':4, 'd':3} >>> d1.update(d2) >>> d1 {'a': 1, 'b': 4, 'c': 3, 1: 'a', 'd': 3} >>> d2 {1: 'a', 'b': 4, 'd': 3}
View Code

 

85、python3解釋器執行 {2, 3, 4}.issubset({2, 3, 4})的結果為__。
True # issubset() 方法用於判斷集合的所有元素是否都包含在指定集合中,如果是則返回 True,否則返回 False。 # 語法: set.issubset(set)  # set -- 必需,判斷集合 x 的所有元素是否都包含在集合 y 中,如果都包含,則返回 True,否則返回 False。 # 實例如下 :
>>> x = {"a", "b", "c"} >>> y = {"f", "e", "d", "c", "b", "a"} >>> print(x.issubset(y)) True # 集合x為集合y的子集
>>> print(y.issubset(x)) False # 集合y不是x的子集
View Code

 

86、關於hash函數,下面說法正確的是( ): A hash函數提高了數據安全性 B hash函數可以用來對密碼進行加密 C hash函數可以用來校驗文件的一致性 D 上面說的都對
    D
View Code

 

87、在python中,hash函數無法直接hash字典,但hash(tuple(dict))這種方式是否可行( ): A 不可行 B 可行 C 這么干不科學 D 上面說的都對
B # 這么干是可行的,比如hash(tuple({1:1,2:2,3:3,4:4})),就有hash值,實例如下:
>>> hash(tuple({1:1,2:2})) 3713081631934410656
View Code

 

88、在python中,hash函數依賴一個良好的hash算法,那么這個算法必須具有( ): A 壓縮性 B 抗計算原性 C 抗碰撞性 D 固定長度
ABCD
View Code

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM