メソッドを使用して、文字列を含む 1 次元および 2 次元のリスト/配列を結合しようとしていますinsert()
。
ただし、1D リストから特定の要素を取得し、それを 2D リスト内の特定の場所に配置することは、私が立ち往生した場所です。
これは、目標を簡略化したものです。
#2D list/array
list1= [['a1','b1'], ['a2','b2'] , ['a3','b3']]
#1D list/array
list2= ['c3','c2','c1']
#desired output
list1= [['a1','b1','c1'], ['a2','b2','c2'] , ['a3','b3','c3']]
これは、私がこれを試みようとしているスクリプトから分離されたコードのブロックです。
#loop through 1D list with a nested for-loop for 2D list and use insert() method.
#using reversed() method on list2 as this 1D array is in reverse order starting from "c3 -> c1"
#insert(2,c) is specifying insert "c" at index[2] location of inner array of List1
for c in reversed(list2):
for letters in list1:
letters.insert(2,c)
print(list1)
上記のコードの出力;
[['a1', 'b1', 'c3', 'c2', 'c1'], ['a2', 'b2', 'c3', 'c2', 'c1'], ['a3', 'b3', 'c3', 'c2', 'c1']]
目的の出力を返すための最良かつ最も効率的な方法は何ですか? メソッドを使用する前にリスト連結を導入するのappend()
ではなく、メソッドを使用する必要がありますか?insert()
どんな洞察もいただければ幸いです!