單選題(2.5分*20題)
1. 下列哪個表達式在Python中是非法的? B
A. x = y = z = 1
B. x = (y = z + 1)
C. x, y = y, x
D. x += y
2. python my.py v1 v2 命令運行腳本,通過 from sys import argv如何獲得v2的參數值? C
A. argv[0]
B. argv[1]
C. argv[2]
D. argv[3]
3. 如何解釋下面的執行結果? B
print 1.2 - 1.0 == 0.2
False
A. Python的實現有錯誤
B. 浮點數無法精確表示
C. 布爾運算不能用於浮點數比較
D. Python將非0數視為False
4. 下列代碼執行結果是什麼? D
x = 1
def change(a):
x += 1
print x
change(x)
A. 1
B. 2
C. 3
D. 報錯
5. 下列哪種類型是Python的映射類型? D
A. str
B. list
C. tuple
D. dict
6. 下述字符串格式化語法正確的是? D
A. 'GNU's Not %d %%' % 'UNIX'
B. 'GNU\\'s Not %d %%' % 'UNIX'
C. 'GNU's Not %s %%' % 'UNIX'
D. 'GNU\\'s Not %s %%' % 'UNIX'
7. 在Python 2.7中,下列哪種是Unicode編碼的書寫方式?C
A. a = ‘中文’
B. a = r‘中文’
C. a = u’中文’
D. a = b’中文’
8. 下列代碼的運行結果是? D
print 'a' < 'b' < 'c'
A. a
B. b
C. c
D. True
E. False
9. 下列代碼運行結果是? C
a = 'a'
print a > 'b' or 'c'
A. a
B. b
C. c
D. True
E. False
10. 下列哪種不是Python元組的定義方式? A
A. (1)
B. (1, )
C. (1, 2)
D. (1, 2, (3, 4))
11. a與b定義如下,下列哪個是正確的? B
a = '123'
b = '123'
A. a != b
B. a is b
C. a == 123
D. a + b = 246
12. 下列對協程的理解錯誤的是? D
A. 一個線程可以運行多個協程
B. 協程的調度由所在程序自身控制
C. Linux中線程的調度由操作系統控制
D. Linux中協程的調度由操作系統控制
13. 下列哪種函式參數定義不合法? C
A. def myfunc(*args):
B. def myfunc(arg1=1):
C. def myfunc(*args, a=1):
D. def myfunc(a=1, **args):
14. 下列代碼執行結果是? A
[i**i for i in xrange(3)]
A. [1, 1, 4]
B. [0, 1, 4]
C. [1, 2, 3]
D. (1, 1, 4)
15. 一個段代碼定義如下,下列調用結果正確的是?A
def bar(multiple):
def foo(n):
return multiple ** n
return foo
A. bar(2)(3) == 8
B. bar(2)(3) == 6
C. bar(3)(2) == 8
D. bar(3)(2) == 6
16. 下面代碼運行結果? C
a = 1
try:
a += 1
except:
a += 1
else:
a += 1
finally:
a += 1
print a
A. 2
B. 3
C. 4
D. 5
17. 下面代碼運行後,a、b、c、d四個變量的值,描述錯誤的是? D
import copy
a = [1, 2, 3, 4, ['a', 'b']]
b = a
c = copy.copy(a)
d = copy.deepcopy(a)
a.append(5)
a[4].append('c')
A. a == [1,2, 3, 4, ['a', 'b', 'c'], 5]
B. b == [1,2, 3, 4, ['a', 'b', 'c'], 5]
C. c == [1,2, 3, 4, ['a', 'b', 'c']]
D. d == [1,2, 3, 4, ['a', 'b', ‘c’]]
18. 有如下函數定義,執行結果正確的是? A
def dec(f):
n = 3
def wrapper(*args,**kw):
return f(*args,**kw) * n
return wrapper
@dec
def foo(n):
return n * 2
A. foo(2) == 12
B. foo(3) == 12
C. foo(2) == 6
D. foo(3) == 6
19. 有如下類定義,下列描述錯誤的是? D
class A(object):
pass
class B(A):
pass
b = B()
A. isinstance(b, A) == True
B. isinstance(b, object) == True
C. issubclass(B, A) == True
D. issubclass(b, B) == True
20. 下列代碼運行結果是? C
a = map(lambda x: x**3, [1, 2, 3])
list(a)
A. [1, 6, 9]
B. [1, 12, 27]
C. [1, 8, 27]
D. (1, 6, 9)
多選題(5分*5題)
21. Python中函數是對象,描述正確的是? ABCD
A. 函數可以賦值給一個變量
B. 函數可以作為元素添加到集合對象中
C. 函數可以作為參數值傳遞給其它函數
D. 函數可以當做函數的返回值
22. 若 a = range(100),以下哪些操作是合法的? ABCD
A. a[-3]
B. a[2:13]
C. a[::3]
D. a[2-3]
23. 若 a = (1, 2, 3),下列哪些操作是合法的? ABD
A. a[1:-1]
B. a*3
C. a[2] = 4
D. list(a)
24. Python中單下劃線_foo與雙下劃線__foo與__foo__的成員,下列說法正確的是?ABC
A. _foo 不能直接用於’from module import *’
B. __foo解析器用_classname__foo來代替這個名字,以區別和其他類相同的命名
C. __foo__代表python裡特殊方法專用的標識
D. __foo 可以直接用於’from module import *’
25. __new__和__init__的區別,說法正確的是? ABCD
A. __new__是一個靜態方法,而__init__是一個實例方法
B. __new__方法會返回一個創建的實例,而__init__什麼都不返回
C. 只有在__new__返回一個cls的實例時,後面的__init__才能被調用
D. 當創建一個新實例時調用__new__,初始化一個實例時用__init__
填空題(5分*5題)
26. 在Python 2.7中,執行下列語句後,顯示結果是什麼? 答:0 0.5
from __future__ importdivision
print 1//2, 1/2
27. 在Python 2.7中,執行下列語句後的顯示結果是什麼? 答:none 0
a = 1
b = 2 * a / 4
a = "none"
print a,b
28. 下列語句執行結果是什麼? 答:[1, 2, 3, 1, 2, 3, 1, 2, 3]
a = [1, 2, 3]
print a*3
29. 下列語句的執行結果是什麼? 答:3
a = 1
for i in range(5):
if i == 2:
break
a += 1
else:
a += 1
print a
30. 下列代碼的運行結果是多少? 答:4
def bar(n):
m = n
while True:
m += 1
yield m
b = bar(3)
print b.next()
關注小編後私信【學習資料】領取小編精心整理的零基礎入門的學習教程
閱讀更多 嬌兮心有之 的文章