Swap slices of indexes using a function
问题 Follow-up question of: Python swap indexes using slices r = ['1', '2', '3', '4', '5', '6', '7', '8'] If I want to swap slices, using a function, what would be the correct method? def swap(from,to): r[a:b+1], r[c+1:d] = r[c:d], r[a:b] swap(a:b,c:d) I want to swap the numbers 3 + 4 with 5 + 6 + 7 in r: swap(2:4,4:7) Is this correct? 回答1: Without any calculation, you can do : def swap(r,a,b,c,d): assert a<=b<=c<=d r[a:d]=r[c:d]+r[b:c]+r[a:b] 回答2: An interesting (but silly one, the one by B. M.