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 遍歷這...