2017-08-12 12 views
1

2つのリストがあります。 1つはリストのリストで、もう1つは標準リストです。リストを必要とするGoogleスプレッドシートAPIに適切な形式でフィードするような方法でそれらを組み合わせる必要があります。入れ子リストの先頭にリストを挿入

a =[['079872', 'OE', '02', 'BG', 'K'], ['159926', 'UN', '42', 'DB', 'K'], ['159844', 'UN', '24', 'DB', 'V']] 

b = ['col1', 'col2', 'col3','col4', 'col5'] 

c = a + b 

c収量:

['col1', col2','col3','col4', 'col5' 
['079872', 'OE', '02', 'BG', 'K'], 
['159926', 'UN', '42', 'DB', 'K'], 
['159844', 'UN', '24', 'DB', 'V']] 

私は必要なものは次のとおりです。

[['col1', col2','col3','col4', 'col5'], 
['079872', 'OE', '02', 'BG', 'K'], 
['159926', 'UN', '42', 'DB', 'K'], 
['159844', 'UN', '24', 'DB', 'V']] 

私はSOに見つけることができるすべてのソリューションを試みたが、のリストを取得することはできません私が必要とするリストTIA

答えて

3

この単純な解決策も動作します:

>>> [b] + a 
[['col1', 'col2', 'col3', 'col4', 'col5'], 
['079872', 'OE', '02', 'BG', 'K'], 
['159926', 'UN', '42', 'DB', 'K'], 
['159844', 'UN', '24', 'DB', 'V']] 
+0

これはインプレースではないので、結果を 'a'に戻す必要があることに注意してください。 –

+0

注目。 'a = [b] + a'は変更を永続化する必要がある場合にはうまく動作しますが、結果はパイプラインでこの形式で必要なものに渡すこともできます。 – Alexander

3

あなたがlist.insert(0, ...)を探している、これはパイソンと仮定すると:

In [336]: a.insert(0, b) 

In [337]: a 
Out[337]: 
[['col1', 'col2', 'col3', 'col4', 'col5'], 
['079872', 'OE', '02', 'BG', 'K'], 
['159926', 'UN', '42', 'DB', 'K'], 
['159844', 'UN', '24', 'DB', 'V']] 
2

あなたはまた、コレクションからdequeを使用することができます。

from collections import deque 
a =[['079872', 'OE', '02', 'BG', 'K'], ['159926', 'UN', '42', 'DB', 'K'], ['159844', 'UN', '24', 'DB', 'V']] 

b = ['col1', 'col2', 'col3','col4', 'col5'] 
final = deque(a).appendleft(b) 

print(list(d)) 

出力:

[['col1', 'col2', 'col3', 'col4', 'col5'], ['079872', 'OE', '02', 'BG', 'K'], ['159926', 'UN', '42', 'DB', 'K'], ['159844', 'UN', '24', 'DB', 'V']] 
+0

ありがとうございます。彼らはすべてうまくいったので、私はそれらをすべて拒否しました。 –