一道新浪面試題的解析

2022-09-18 06:42:30 字數 1217 閱讀 9227

li = [x + 100 for x in range(10) if x > 6]

li1 = [x + 100 for x in range(10)]

print(li)

print(li1)

#執行結果:

#[107, 108, 109]

#[100, 101, 102, 103, 104, 105, 106, 107, 108, 109]

li = [lambda :x for x in range(10)]

print(li[0]())

結果是多少?

分析: 因為lamda :x 這個函式在進行迴圈時,並沒有執行。而在外層列印此時的x,為9,

這時把x的值放入內部進行執行,相當於print(lambda : 9),所以答案為9

上題的本質如下:

li = 

for i in range(10):

def f1():

return i

# li為列表,內部為相同功能的函式

print(li[0]())

print(li[1]())

print(li[2]())

print(li[3]())

print(li[4]())

執行結果:99

999注意去理解

此時修改一下上題中的引數,看看新的結果是什麼

li = 

for i in range(10):

def f1(x=i): # 原來沒有引數,此時加上引數

return i

print(li[0]())

print(li[1]())

print(li[2]())

print(li[3]())

執行結果如下:99

999注意去理解

此時如果再次對上題中的引數進行更改,看看結果有會如何變化

li = 

for i in range(10):

def f1(x=i):

return x # 此時只把上例中的返回值給改為x

print(li[0]())

print(li[1]())

print(li[2]())

print(li[3]())

執行結果:01

234注意理解,本質上就是看其執行了還是沒執行。

一道面試題的解析

一道面試題的解析 題目 1.畫三角形,四邊形,圓形,在視窗中移動,碰到視窗邊緣會自動彈回 2.通過選單,可以增加三角形,四邊形,圓形 3.對選中的圖形,可以設定填充顏色,線條寬度 4.畫三角形,四邊形,圓形,採用 bitmap 和位置兩種方式實現,位圖實現不設定填充顏色,線條寬度,隨機產生位置。5....

一道面試題

一道面試題 射擊運動員10發打中90環有多少種可能,請編寫程式計算出來,並列印出結果,0環和10環均有效。打中90環就是沒打中10環,所以打中90環跟打中10環的可能性是一樣的。然後開始遞迴狂打槍,一到10就記錄 if params i 10 在迴圈的控制中已經排除了大於10的可能性 i 10 pa...

一道面試題

前些時候在找工作,就在準備結束此次找工作歷程的時候,去了一家公司面試,去了之後技術經理直接帶到一台電腦旁,給了一張紙條,上面是這樣的題目 用c或c 來實現 1 建立一棵樹,該樹的深度是隨機的,每個節點的位元組點數是隨機的。2 給每個節點分配一段隨機大小的記憶體空間,給每個節點賦乙個隨機數。3 遍歷這...