2016-10-16 5 views
-1

나는 현재이 같은 목록이 있습니다Python - 목록의 목록을 단일 목록에 병합하는 방법?

[3, 4, ['x', 'y', 'z'], 5]

을이에

[3, 4, 'x', 'y', 'z', 5]

새로운 초보자으로 만들고 싶어, 주변 검색을 시도하지만, 아무것도 찾을 수 없습니다 나는 이해할 수 있었다.

+0

그냥'구글 python'에서 목록의 목록을 평평 int로되지

l=[3, 4, ['x', 'y', 'z'], 5] nl=[];[nl.extend([x] if isinstance(x,int) else x) for x in l] 

라이너. 확실히 중복. – sisanared

+0

왜 문제를 해결하려고 시도하지 않습니까? 어쩌면 우리가 그걸 도울 수 있습니다. – wwii

답변

0
l=[3, 4, ['x', 'y', 'z'], 5] 
nl=[] 
for x in l: 
    if not isinstance(x,int): 
     for y in x: 
      nl.append(y) 
    else: 
     nl.append(x) 

print(nl) 

하나 그것은 주어진 하나가 목록의 조합이기 때문에 목록의 목록을 flatening 및

+0

[isinstance] (https://docs.python.org/3/library/functions.html#isinstance) "... 개체 유형을 테스트하는 데 좋습니다 ..." – wwii

+0

"한 줄짜리"는 다음과 같습니다. list comprehensions을 사용하지 않을 때의 예. 명령형 기술 (데이터 구조를 변형, 즉'list.exend')과 기능적 구성 (list comprehensions)을 혼합하지 마십시오. 또한 일반적으로 한 줄에 여러 문장을 사용하고 세미콜론으로 구분하여 사용하는 것은별로 좋지 않은 것으로 간주됩니다. 가독성이 중요합니다. –

관련 문제