Với một danh sách đầu vàoCác mục nhóm của danh sách có python kích thước bước?
l = [1 2 3 4 5 6 7 8 9 10]
và kích thước nhóm grp và từng bước
grp = 3; step = 2
Tôi muốn trả về một danh sách. Lưu ý sự lặp lại ở phần cuối
1 2 3
3 4 5
5 6 7
7 8 9
9 10 1
hoặc nếu
grp= 4; step = 2
Sản lượng nên
1 2 3 4
3 4 5 6
5 6 7 8
7 8 9 10
Đây là mã tôi đến với nó không làm điều cyclic. Nhưng muốn biết nếu có một nhỏ hơn hoặc một giải pháp đơn giản hơn
def grouplist(l,grp,step):
oplist = list()
for x in range(0,len(l)):
if (x+grp<len(l)):
oplist.append(str(l[x:x+grp]))
return oplist
Đối với tôi cuộc xung đột hai ví dụ. Vui lòng hiển thị một bước cho bước = 1. Hay là ví dụ 1 nên là gì? – Pynchia
@Pynchia hai ví dụ không xung đột. Cả hai đều có 'step = 2' nên số đầu tiên trên hàng thứ hai phải là' 3'. – SirParselot
Tại sao cho grp 4 bước 2 chúng ta quấn lại khoảng 1 thay vì 10? – wim