本次練習題涉及到的知識點:
* Python中函數的定義和使用
* 傳入函數的參數個數不固定的使用語法
* lambda函數的使用語法
* Python異常處理的相關語法
1.關于函數的描述,錯誤的選項是(A)。
解析:Python使用保留字def定義一個函數。
2.以下程序的輸出結果是(D)。
ab = 4 def myab(ab, xy): ab= pow(ab,xy) print(ab,end=" ") myab(ab,2) print(ab)
解析:容易出錯。Python中參數傳入函數后只是作為形參供函數處理,實參本身不會被修改。
3.以下程序的輸出結果是(D)。
def func(num): num *= 2 x = 20 func(x) print(x)
4.以下程序的輸出結果是(D)。
def fun1(a,b,*args): print(a) print(b) print(args) fun1(1,2,3,4,5,6)
解析:本題考慮函數傳入參數個數不定的語法。
5.以下程序的輸出結果是(D)。
def func(a,*b): for item in b: a += item return a m = 0 print(func(m,1,1,2,3,5,
7,12,21,33))
6.下面代碼的輸出結果是(D)。
def change(a,b): a = 10 b += a a = 4 b = 5 change(a,b) print(a,b)
7.Python語句序列的程序運行結果是(D)。
f1=lambda x:x*2 f2= lambda x:x**2 print(f1(f2(2)))
解析:本題考察Lambda函數的使用語法。
8.以下程序的輸出結果是(A)。
s = 0 def fun(num): try: s += num return s except: return 0 return 5 print(fun(
2))
解析:本題考察Python異常處理的語法內容。
9.下面代碼的輸出結果是(D)。
ls = ["F","f"] def fun(a): ls.append(a) return fun("C") print(ls)
10.關于Python的全局變量和局部變量,以下選項中描述錯誤的是(B)。
11.閱讀下面的Python程序,請問繪制的圖形是什么?
import turtle as t def DrawCctCircle(n): t.penup() t.goto(0,-n) t.pendown() t.
circle(n) for i in range(20,80,20): DrawCctCircle(i)
解析:由三個圓構成的一組同心圓。
12.經常會有要求用戶輸入整數的計算需求,但用戶未必一定輸入整數。為了提高用戶體驗,編寫getInput()函數處理這樣的情況。請補充如下代碼,如果用戶輸入整數,則直接輸出整數并退出,如果用戶輸入的不是整數,則要求用戶重新輸入,直至用戶輸入整數為止。
def getInput(): try: txt=input("請輸入整數:") ___ txt=input("請輸入整數:") except: ___
return eval(txt) print(getInput())
補充完整的代碼:
def getInput(): try: txt = input() # "請輸入整數: " while eval(txt) != int(txt): txt
= input() # "請輸入整數: " except: return getInput() return eval(txt) print(getInput(
))
13.已知有函數定義 def demo(※p):return sum( p),那么表達式 demo(1, 2, 3) 的值為()、表達式 demo(1,
2, 3, 4) 的值為()。
答案:6;10
14.表達式 [i for i in range(10) if i>8] 的值為___。
答案:[9]
15.已知函數定義 def func(*※p):return sum§,那么表達式 func(1,2,3, 4) 的值為___。
答案:10
16.閱讀下面的Python語句,請問輸出結果是(6)。
def recurse(n, s): if n == 0: print(s) else: recurse(n-1, n+s) recurse(3, 0)
今日推薦