2017-12-23 18 views
1

나는 (길이 두) 목록을하고 난mypy를 화나게하지 않고 목록을 튜플로 변환하려면 어떻게해야합니까?

from typing import List, Tuple 

l: List[int] = [1, 2] 
assert len(l) == 2 
t: Tuple[int, int] = tuple(l) 
이 가

는 상관없이 내가 뭘, 내가 오류 메시지를 얻을 튜플로 변환 할 :

Incompatible types in assignment 
(expression has type "Tuple[int, ...]", variable has type "Tuple[int, int]") 

나는 시도했다 접합

t: Tuple[int, int] = tuple(l)[0:2] 
t: Tuple[int, int] = tuple(l[0:2]) 

t: Tuple[int, int] = tuple([l[0], l[1]]) 
t: Tuple[int, int] = l[0], l[1] # strangely invalid syntax, even though t = l[0], l[1] is valid 
를 다시

the docs을 읽었지만이 방법을 찾지 못했습니다.

답변

1

튜플 함수를 사용하지 마십시오. 괄호 구문을 사용하십시오.

t: Tuple[int, int] = (l[0], l[1]) 
+0

나는 양떼를 느낍니다. – McKay