Dari pemahaman saya tentang pertanyaan Anda, tampaknya Anda ingin menerapkan permutasi yang Anda tentukan pada a list. Ini dilakukan dengan menentukan yang lain list(sebut saja p) yang memegang indeks dari elemen asli listyang harus muncul di permutasi list. Anda kemudian menggunakan puntuk membuat baru listdengan hanya mengganti elemen di setiap posisi dengan yang indeksnya ada di posisi itu p.
def apply_permutation(lst, p):
return [lst[x] for x in p]
arr=list("abcde")
new_order=[3,2,0,1,4]
print apply_permutation(arr,new_order)
Ini cetakan ['d', 'c', 'a', 'b', 'e'].
Ini sebenarnya membuat yang baru list, tetapi dapat dimodifikasi dengan mudah untuk mengubah aslinya "di tempat".