2011-07-31 10 views
1
conn_request, weights = zip(*[ 
    ((conn, request), request[2]) 
    for conn in unchoked_conns 
    for request in conn.peer_requests 
]) 

는 생성 : 나는 내가 잘못 알아 작동하지 않을 수왜이 중첩 된 목록 이해가 오류를 생성합니까?

for conn in unchoked_conns 
ValueError: need more than 0 values to unpack 

. 나는 request의 의존성과 관련이 있다고 생각한다. conn에?

답변

4
>>> a, b = zip(*[]) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
ValueError: need more than 0 values to unpack 

LC는 빈 목록을 생성합니다. unchoked_conns에 요소가 있는지 확인하십시오.

+0

가이 버그, 또는 감독으로 가지고있다. 빈리스트 케이스를 제외하고 모두 잘 작동합니다. –

0

빈 목록을 압축하면 단일 빈 목록이 반환되므로 할당이 실패합니다. 즉, 명확하게 말한다 우편 도움,과 일치 : 귀하의 경우

The returned list is truncated in length to the length of the shortest argument sequence 

을, 짧은 인수 순서는 길이가 0

관련 문제