リストの要素の入れ替え
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)