2015-02-05 2 views
1

10 개의 숫자를 가져 와서 목록으로 재 인쇄하지만 특정 금액 이하는 0으로 바꾸는 간단한 프로그램을 작성하고 있습니다. 첫째, '입력'이 작동하지 않아서 번호를 알려줍니다. 둘째, 'TypeError :'int 'object is iterable'이 주 함수의 두 번째 'for'루프에 대해 발생합니다. 어떤 아이디어?왜 Typeerror가 발생합니까 : 'int'객체가 반복 가능하지 않습니다.

amx = [] 

def validamount(amount, limit): 
    if amount >= limit: 
     return amount 
    else: 
     return 0 

def main(): 
    for i in 10: 
     amx.append(int(input())) 
    for i in 10: 
     print(validamount(amx[i], 5)) 

main() 
+1

:

for i in range(10): 

을 참조하십시오. '10'은 콜렉션이 아니며, 무엇을 반복하고 있습니까? – Barmar

+1

숫자 '10'은 목록이 아니며 단지 숫자입니다. 당신은 그것을 반복 할 수 없습니다. 나는 당신이'range (10)'를 원한다고 생각합니다. – SethMMorton

+0

오케이 - 범위 (10). 이제 완벽하게 작동합니다. 좋은 몇 달 동안 멍청한 실수를 저 지르지 않았습니까? – mistermarko

답변

2

for i in 10:은 오류의 원인입니다. 대신 for i in range(10):이어야합니다.

관련 문제