我需要驗證,如果我的清單列表中有在python同樣大小的名單檢查,看看是否列出的清單具有相同大小的名單
myList1 = [ [1,1] , [1,1]] // This should pass. It has two lists.. both of length 2
myList2 = [ [1,1,1] , [1,1,1], [1,1,1]] // This should pass, It has three lists.. all of length 3
myList3 = [ [1,1] , [1,1], [1,1]] // This should pass, It has three lists.. all of length 2
myList4 = [ [1,1,] , [1,1,1], [1,1,1]] // This should FAIL. It has three list.. one of which is different that the other
我可以寫一個循環來遍歷列表,並檢查每個子列表的大小。是否有更多的pythonic方式來實現結果。
我在這裏看到的問題是(如果編譯器沒有優化它),你正在計算索引0的列表長度n次加上1次計算每個其他列表,這使得2 * n長度計算。 –
@SanSS,長度不是_calculated_,它是一個屬性。如果你確實需要微小的速度提升,你可以將它存儲在一個變量中。當列表爲空時,您必須特殊處理 –
如果將'all'的參數嵌套到列表中,讓這個工作起作用有點麻煩嗎? 'all([len(i)== len(myList [0])for myList])' – FriskyGrub