リストの要素の入れ替え
n番目以降の要素を全て入れ替える
まず一般的と思われる交換方法を示す。
list1 = [1, 2, 3, 4, 5, 6]
list2 = [7, 8, 9, 10, 11, 12]
n = 2
for i in range(len(list1)):
if (i>=n):
list1[i], list2[i] = list2[i], list1[i]
print(list1)
print(list2)
# [1, 2, 9, 10, 11, 12]
# [7, 8, 3, 4, 5, 6]
このコード内の n を3にするとlist1とlist2の4番目以降の要素を入れ替えることができる。
スライス(:)を使った別法
こちらも汎用性のある方法である。スライスを使うと範囲指定が簡単である上にコードも読みやすい。
list1 = [1, 2, 3, 4, 5, 6] list2 = [7, 8, 9, 10, 11, 12] i = 0 temp = list1[i:].copy() list1[i:] = list2[i:] list2[i:] = temp print(list1) print(list2)
