2017-12-09 1 views
3

파이썬 초보자 : 목록과 값이 주어지면 어떻게 목록을 개별 객체로 풀고 값을 앞에 추가 할 수 있습니까? 배열의 길이는 아래 코드에서와 달리 알려지지 않은 :파이썬 2.7의 목록에서 값을 풀기

x = [1,2,3,4] 
y = 0,x 
y 

전류 출력 :

(0, [1, 2, 3, 4]) 

원하는 출력 :

(0, 1, 2, 3, 4) 

내가 파이썬에서 쉽게 할 수있어 3 y = 0,*x을 사용하지만 어떻게 파이썬 2.7에서 할 수 있습니까?

감사합니다.

+0

결과가 터플이거나 결과 목록에 있습니까? –

답변

2

여기서 압축 풀기는 사용하지 말고 연결 만 사용하십시오.

y = [0] + x 
+0

그리고 @berneng이 y가 튜플이되기를 원한다면 y = tuple ([0] + x) 또는 y = tuple (y)를 간단히 수행 할 수 있습니다. –

2

삽입 X에 y를 만드는 X의 튜플

x = [1,2,3,4] 
y = 0 
x.insert(0,y) 
print(tuple(x)) 

출력

(0, 1, 2, 3, 4) 
+0

참고로 OP가 원하지 않는 'x'를 수정합니다. –

+0

왜'x'를 수정하고 있습니까? 게다가, 위치 0에 삽입하는 것은 상대적으로 비용이 많이 든다. 왜냐하면 모든 후속 목록 항목은 O (n) 연산 인 공간을 만들기 위해 위로 이동해야하기 때문에 C 속도에서 발생하지만 필요하지 않은 경우에는 피하는 것이 더 좋다. –

1

당신 매개 변수를 풀고 함께 할 수 있습니다.

>>> (lambda *a: a)(0, *x) 
(0, 1, 2, 3, 4) 

하지만 그렇게하지 마십시오.