python find 함수 - 한 번에 여러 개의 목록을 추가 할 수 있습니까? (파이썬)





3 Answers

내 댓글 확장

In [1]: x = [1, 2, 3]
In [2]: y = [4, 5, 6]
In [3]: z = [7, 8, 9]
In [4]: from itertools import chain
In [5]: print list(chain(x,y,z))
[1, 2, 3, 4, 5, 6, 7, 8, 9]
여러개 문자열 추출

필자가 작성하려고하는 프로그램의 "기본"목록과 같은 단일 목록에 추가하려는 목록이 있습니다. 10 개가 아닌 한 줄의 코드에서이 작업을 수행 할 수 있습니까? 나는 초심자이므로 잘 모르겠다.

내 질문에 대한 더 나은 그림을보기 위해 내가이 목록을 가지고 있다면 어떨까요?

x = [1, 2, 3]
y = [4, 5, 6]
z = [7, 8, 9]

그리고 x에 y와 z를 더하고 싶습니다. 대신에 :

x.append(y)
x.append(z)

한 줄의 코드에서이 작업을 수행 할 수있는 방법이 있습니까? 나는 벌써 시도했다.

x.append(y, z)

그리고 그것은 효과가 없습니다.




위의 답변과 동일하지만 언급 할만큼 충분히 다른 :

my_map = {
   'foo': ['a', 1, 2],
   'bar': ['b', '2', 'c'],
   'baz': ['d', 'e', 'f'],
} 
list(itertools.chain(*my_map.values()))
['d', 'e', 'f', 'a', 1, 2, 'b', '2', 'c']

위의 식에서 *는 args를 사슬로 묶는 결과를 얻기 위해 중요합니다. 이것은 이전 사슬 (x, y, z)과 같습니다. 또한 결과가 해시 순서로 표시됩니다.




한 줄에서는 다음과 같은 방법으로 수행 할 수 있습니다.

x.extend(y+z)

또는

x=x+y+z



Related