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.
Antwoord 1, autoriteit 100%
for i in count:
betekent for i in 7:
, wat niet werkt. Het bit na de in
moet 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