こんにちは私は2つのリストをサブリストに順次マージしようとしています。私はリストの解説やラムダの操作なしでこれが可能かどうか、私はまだそれらのアプローチで作業する方法を学んでいるのだろうかと思います。 lambda
Sまたはリストの内包表記(問題がリストコンプとは何かわからない)を含まない別のリストのアイテムをネストされたリストにマージする
a = [0,1,2,3]
b = [4,5,6,7]
#desired output
c = [0,4],[1,5],[2,6],[3,7]
こんにちは私は2つのリストをサブリストに順次マージしようとしています。私はリストの解説やラムダの操作なしでこれが可能かどうか、私はまだそれらのアプローチで作業する方法を学んでいるのだろうかと思います。 lambda
Sまたはリストの内包表記(問題がリストコンプとは何かわからない)を含まない別のリストのアイテムをネストされたリストにマージする
a = [0,1,2,3]
b = [4,5,6,7]
#desired output
c = [0,4],[1,5],[2,6],[3,7]
アプローチはmap
になりありがとう:
c = list(map(list, zip(a, b)))
にこの最初のzip
S一緒にリストを作成し、zip
から生成されたタプルごとにlist
インスタンスを作成し、map
とし、list
にすべてをラップしてmap
の内容をすべて返します。
print(c)
[[0, 4], [1, 5], [2, 6], [3, 7]]
これは、少なくとも私の見解では、同等の理解Johnがコメントで提供したものよりも理解しづらいものです。
初心者に適したソリューションです。
c = []
a = [0,1,2,3]
b = [4,5,6,7]
for i in range(min(len(a), len(b))):
c.append([a[i], b[i]]) # writing [a[i], b[i]] creates a new list
print(c)
あなたは 'c = [[0,4]、[1,5]、[2,6]、[3,7]]'を意味しますか? – Li357
'[list(t)for t in zip(a、b)]'これは、必要に応じて、より冗長なループに簡単に変換されます。 –
これは素晴らしいことです!答えに感謝します。非常に役立ちます。 –