3
i = 0
num = 0
while i <= 1000:
    if i % 3 and i % 5 == 0:
        num + i = num <--- Adding Up Numbers Divisable by 3 & 5...
    i += 1
print num

エラー:*演算子に割り当てることができません(5行目)

4

2 に答える 2

10

本当にしたくないですか:

num = num + i

または同等に:

num += i

sumこれは、rangeとジェネレータ式を使用すると少し簡単に実行できることに注意してください。

sum( x for x in range(0,1000,5) if x % 3 == 0 )
                            #^only take every 5th element (0, 5, 10, 15 ...)
                                    #^ Also only take elements divisible by 3

このコードをpython2.xでのみ実行することを計画している場合は、上記の式でにrange変更できます。xrangeまた、他の人のコードを読むとき、このタイプのコンテキストのようにif x % 3 == 0書かれているのが見えることがありif not x % 3ますが、私は最初のバージョンを好みます(私にはもう少し明確に思えます)。

于 2012-08-17T12:42:50.780 に答える
2
num + i = num <--- Adding Up Numbers Divisable by 3 & 5...

式に値を割り当てることはできません。

また、毎回5を足して、3で割り切れることを確認してみませんか?あなたはそれが5で割り切れるのをすでに知っているでしょう...

于 2012-08-17T12:42:09.597 に答える