0

メソッドを使用して、文字列を含む 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()

どんな洞察もいただければ幸いです!

4

1 に答える 1