2012-07-18 2 views
-2

편집 : 문제는 내 코드의 다른 부분 때문입니다. 나는 그것이 루프조건이 일치 할 때 파이썬 루프에서 증가시키기

위해 내가 이렇게되면 파이썬에서 루프를 가지고이라고 생각 :

for x in OrderedList: 
    if x in ResultList1: 
     print x, '1' 
    elif x in ResultList2: 
     print x, '2' 
    elif x in ResultList3: 
     print x, '3' 

ResultList1ResultList2x, 그것은 x,'1' 인쇄 찾아 x,'2'하지만 내가 원하는 경우 문제는 ResultList1에서 x가 발견되면 x에 대한 다음 값을 얻으려면 2와 3도 표시되지 않습니다.

+6

당신은 elif를 가지고 있기 때문에 하나의 사례 만 입력하면됩니다. 주문 목록을 볼 수 있으므로 "x"가 거의 인쇄되지 않기 때문에 함수의 실제 출력을 볼 수 있습니다. –

답변

2

코드에서 이미 확인했습니다. 당신은 다음 요소로 이동할 수 있습니다

다른 방법은 continue을 사용하는 것입니다 : 당신이 elif를 사용하고 있기 때문에 여기에 불필요하지만

for x in OrderedList: 
    if x in ResultList1: 
     print x, '1' 
     continue 
    if x in ResultList2: 
     print x, '2' 
     continue 
    if x in ResultList3: 
     print x, '3' 
     continue 

.

+0

그 정보를 ... 그러나 그것은 그가보고있는 모든 행동에 대해 아무 것도하지 않습니다. 그는 이미 엘프를 사용하고 있기 때문에 (당신이 말했듯이) ... 그는 다른 근본적인 결함이나 요소가 없습니다. –

+0

죄송합니다. 훨씬 더 큰 프로그램과 나는이 문제를 일으키는 다른 곳에서 문제를 겪고있었습니다. 나는 for 루프라고 생각했다. 응답 주셔서 감사합니다. – adohertyd

관련 문제