TypeError: ‘float’ object niet itereerbaar

Ik gebruik python 3.2.2 op Windows 7 en ik probeer een programma te maken dat 7 getallen accepteert en de gebruiker vertelt hoeveel positief, hoeveel negatief en hoeveel nul. dit is wat ik tot nu toe heb:

count=7
for i in count:
    num = float(input("Type a number, any number:"))
    if num == 0:
        zero+=1
    elif num > 0:
        positive+=1
    elif num < 0:
        negative+=1
print (positive)
print (negative)
print (zero)

Maar als ik de code uitvoer, krijg ik

TypeError: 'float' object is not iterable

Als ik float in regel 3 vervang door int, krijg ik hetzelfde probleem, behalve dat het zegt dat het ‘int’-object niet itereerbaar is. Ik heb ook geprobeerd de waarde van count te veranderen van 7 naar 7.0

Nu nam ik deze uitdaging aan uit een python-zelfstudieboek en ze hebben het antwoord niet, en voor zover ik kan zien heb ik alles gedaan binnen de syntaxis die ze naar voren brachten.

De tutorial is hier (PDF)


Antwoord 1, autoriteit 100%

for i in count:betekent for i in 7:, wat niet werkt. Het bit na de inmoet van een itereerbaar type zijn, geen getal. Probeer dit:

for i in range(count):

Antwoord 2, autoriteit 10%

gebruik

bereik(aantal)

int en float zijn niet itereerbaar

Other episodes