2017-12-31 231 views
-2

첫 번째 목록의 모든 요소가 두 번째 목록과 정수로 구성된 목록 목록이 있습니다.2 개 요소, 목록 및 int가있는 목록은 해당 목록 항목과 해당 int를 연결하려고합니다.

내가하고 싶은 것은 목록의 모든 요소와 그 단일 정수를 연결하여 첫 번째 목록의 요소를 코드의 두 요소 목록으로 만듭니다. 나는 이것을하는 방법에 대한 단서가 없다.

list2 = [[[l[0], num] for num in l[1:]] for l in list1] 

출력은 다음과 같습니다 :

list1 = [[1,2,3],[1,2,3,4]] 


list2 = [] 
list3 = [] 

for element in range (len(list1)): 
    list2.append(list1[element][0]) 
    list2.append(list3) 
    list3.append([list1[element][1:]]) 
    list3[element].append(list1[element][0])  

print(list3) 
+1

실제 코드를 게시하고,'list','set','dict' 같은 변수 물건의 이름을하지 마십시오 ... –

+1

그것은 당신이 무엇을 원하는 불분명하다. 아마도 그와 같은 나쁜 생각은 아닌가? – RoadRunner

+0

좋아, 고마워, 나는 목록 = [1, [2,3]]이고 나는 그것을 목록 = [[1,2], [1,3]]로 바꾼다. 나는 빠른 번역에서 그것들을 그렇게 바꾸었다. –

답변

1

간단한 방법 예 :

l = [1,[2,3]] 
final_l = [[l[0], i] for i in l[-1]] 

출력 :

[[1, 2], [1, 3]] 

보다 큰 예제를위한 솔루션 :

l = [[1,[2,3]], [3, [45, 2]], [6, [12, 2]], [3, [3, 4]]] 
final_l = [[[c, a] for c in b] for a, b in l] 

출력 :

[[[2, 1], [3, 1]], [[45, 3], [2, 3]], [[12, 6], [2, 6]], [[3, 3], [4, 3]]] 
0

이 시도 :

내가이 테스트 사용하고 코드입니다 처음에

list2 = [[[1, 2], [1, 3]], [[1, 2], [1, 3], [1, 4]]] 
+0

고마워. 도움이 될 것입니다! 또 다른 질문은 문자열 요소에서도 사용할 수 있습니까? –

0

당신은이 방법으로 한 줄에 시도 할 수 있습니다 :

l = [[1,[2,3]], [3, [45, 2]], [6, [12, 2]], [3, [3, 4]]] 

print(list(map(lambda x:list(map(lambda y:[y,x[0]],x[1])),l))) 

출력 :

[[[2, 1], [3, 1]], [[45, 3], [2, 3]], [[12, 6], [2, 6]], [[3, 3], [4, 3]]]