2016-09-22 17 views
-1

がある場合は常に1Dリストを2Dに変換しようとしています。" n"ごとに1Dリストを2Dに変換する - Python

a = [['a', 'b']['c', 'd']] 

a = ['a', 'b', '\n', 'c', 'd'] 

誰も私を助けることができますか?

編集

これは私が文字列

a = """\ 
f:   1000:000 000 000 000 000 000 000 000 000 000 000 000 f:   2000:000 000 000 000 000 000 000 000 000 000 000 000 
f:   0000:000 000 000 000 000 000 000 000 000 000 000 000 f:   0000:000 000 000 000 000 000 000 000 000 000 000 000 
f:   0000:000 000 000 000 000 000 000 666 000 000 000 000 f:   0000:000 000 000 000 000 000 000 000 000 000 000 000 
f:   0000:000 000 000 000 000 333 000 000 000 000 000 000 f:   0000:000 000 000 000 000 000 000 000 000 000 000 000 
""" 

を持っているので、私はlist(a)をやっLISTBYに変換するときので、すべての改行で私は\nを取得するので、私はちょうどそれを分割したいですそこ。

+0

dublicate? http://stackoverflow.com/questions/4322705/split-a-list-into-nested-lists-on-a-value –

+0

@ a.smiet最新の質問 – Akshay

答えて

4

最も簡単な方法は、リストを作成して文字列を作ることです。その後は「\ n」の上でそれを分割し、サブリストにリスト内の各文字列を変換:あなたはこのアプローチに行きたくない場合は

>>> a_string = ''.join(a) 
>>> map(list, a_string.split()) 
[['a', 'b'], ['c', 'd']] 

、以下forループに基づく単純な論理は以下のとおりです。

>>> my_list = [] 
>>> sub_list = [] 
>>> for item in a: 
...  if item != '\n': 
...   sub_list.append(item) 
...  else: 
...   my_list.append(sub_list) 
...   sub_list = [] 
... 
>>> my_list.append(sub_list) 
>>> my_list 
[['a', 'b'], ['c', 'd']] 
関連する問題