python3程式碼中函式切割列表怎麼實現?

joytoy發表於2021-09-11

python3程式碼中函式切割列表怎麼實現?

我們都有過切蛋糕的經歷,根據人數分成大致的幾個份數,當然在大小方面可能稍微有些區別,畢竟手動切割不好把握。我們經常提到的函式同樣也有切割的需求,具體的操作我們先來理解一下基礎的切片,然後小編會給大家到來一個函式切割列表的例項進行體驗,下面就讓我們從切片學習開始入手吧。


在Python中,切片(slice)是對序列型物件(如list, string, tuple)的一種高階索引方法。普通索引只取出序列中一個下標對應的元素,而切片取出序列中一個範圍對應的元素,這裡的範圍不是狹義上的連續片段。下面的程式碼初步展示了切片索引的力量。

 >>> a = list(range(10))
 >>> a
 [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
 >>> a[:5]
 [0, 1, 2, 3, 4]
 >>> a[5:]
 [5, 6, 7, 8, 9]
 >>> a[2:8]
 [2, 3, 4, 5, 6, 7]
 >>> a[::2]
 [0, 2, 4, 6, 8]
 >>> a[::-1]
 [9, 8, 7, 6, 5, 4, 3, 2, 1, 0


給定具體的大小,定義一個函式以按照這個大小切割列表。

from math import ceil
 
def chunk(lst, size):
    return list(
        map(lambda x: lst[x * size:x * size + size],
            list(range(0, ceil(len(lst) / size)))))
 
 
 
chunk([1,2,3,4,5],2)
# [[1,2],[3,4],5]


相信經過初步的切片學習,我們已經對於切片有了一個大概的瞭解,在函式切割列表的問題上也能很好地進行處理,沒有學會的小夥伴可以多看看上面的程式碼。更多Python學習指路:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/4650/viewspace-2831906/,如需轉載,請註明出處,否則將追究法律責任。

相關文章