2016-09-22 2 views
-1

\n이있을 때마다 1D 목록을 2D로 변환하려고합니다." n"마다 1D 목록을 2D로 변환 - Python

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

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

은 누구도 날 도와 드릴까요? 내가 listby 내가 \n을받을 때마다 줄 바꿈에, list(a)을하고로 변환 할 때 내가 문자열 그래서

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 
""" 

을 가지고 있기 때문에

편집

이다, 그래서 나는 단지 그것을 분할 할 그곳에.

+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']] 
관련 문제