2012-09-28 2 views
0

"동안"프로그램은보다 작은 값의 인덱스를 입력으로 목록을 반환하도록되어 이용해서 목표 ​​값보다 작은 목록의 값을 리턴 인덱스 0파이썬 : A는 루프

그러나 for 루프는 사용할 수 없습니다. 나는 while 루프를 사용하여이를 수행해야한다.

예를 들어, 내 기능 findValue (목록)라는 이름의 내 목록은 [-3,7는, -4,3,2은 -6], 그것은 다음과 같이 보일 것이었다 있다면 :

>>>findValue([-3,7,-4,3,2,-6]) 

[0, 2, 5] 

은 지금까지 내가 시도 반환 : 나는 당신의 코드에 몇 가지 작은 변화를 만들어

def findValue(list): 
    under = [] 
    length = len(list) 
    while length > 0: 
     if x in list < 0:  #issues are obviously right here. But it gives you 
      under.append(x)  #an idea of what i'm trying to do 
     length = length - 1 
    return negative 
+0

단지 – user1707398

답변

0

. 기본적으로 변수 i을 사용하여 주어진 반복에서 요소 x의 인덱스를 나타냅니다.

def findValue(list): 
    result = [] 
    i = 0 
    length = len(list) 
    while i < length: 
     x = list[i] 
     if x < 0:  
      result.append(i) 
     i = i + 1 
    return result 

print(findValue([-3,7,-4,3,2,-6])) 
+0

완벽한 정확히 솔루션을 내가 찾고 있던 내 원래의 게시물 재 편집. 감사 – user1707398