web-dev-qa-db-ja.com

TypeError: 'float'オブジェクトは反復不可

私はpython 3.2.2をWindows 7で使用しており、7個の数字を受け入れて、ユーザーに正の数、負の数、および数を伝えるプログラムを作成しようとしています。これは私がこれまでに得たものです:

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)

しかし、コードを実行すると

TypeError: 'float' object is not iterable

3行目のfloatをintに置き換えると、「int」オブジェクトが反復可能ではないということを除いて、同じ問題が発生します。 countの値を7から7.0に変更してみました

今、私はこの挑戦をpythonチュートリアルブックから取りました、彼らは答えを持っていません、そして私が伝えることができることから、私は彼らが提示した構文内ですべてをしました。

チュートリアルはこちら(PDF)

20
hamsolo474

for i in count: 手段 for i in 7:、これは機能しません。 inの後のビットは、数値ではなく反復可能な型である必要があります。これを試して:

for i in range(count):
27
Thomas K

つかいます

範囲(カウント)

intとfloatは反復不可能です

3