Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python - 주어진 목록을 중첩 목록으로 변환

<시간/>

목록의 요소를 목록 자체로 변환해야 하는 상황이 있을 수 있습니다. 즉, 요소도 목록이므로 중첩된 목록을 만듭니다.

반복 사용

이것은 목록의 각 요소를 가져와 목록 형식으로 변환하는 새로운 접근 방식입니다. 이를 달성하기 위해 임시 목록을 사용합니다. 마지막으로 목록으로 변환되는 이러한 모든 요소는 함께 그룹화되어 필요한 목록 목록을 만듭니다.

예시

listA = ['Mon','Tue','Wed','Thu','Fri']

print("Given list:\n",listA)
new_list = []

# Creating list of list format
for elem in listA:
   temp = elem.split(', ')
   new_list.append((temp))

# Final list
res = []

for elem in new_list:
   temp = []
   for e in elem:
      temp.append(e)
   res.append(temp)

# printing
print("The list of lists:\n",res)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

Given list:
   ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
The list of lists:
   [['Mon'], ['Tue'], ['Wed'], ['Thu'], ['Fri']]

아스트 포함

또한 파이썬 모듈 이름을 추상 구문 트리로 사용하거나 ast라고 할 수도 있습니다. 여기에는 주어진 목록의 요소를 함께 유지하고 새 목록으로 변환하는 literal_eval이라는 함수가 있습니다.

예시

import ast
listA = ['"Mon","Tue"','"Wed","Thu","Fri"']
print("Given list: \n", listA)
res = [list(ast.literal_eval(x)) for x in listA]

# New List
print("The list of lists:\n",res)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

Given list:
   ['"Mon","Tue"', '"Wed","Thu","Fri"']
The list of lists:
   [['Mon', 'Tue'], ['Wed', 'Thu', 'Fri']]