gpt4 book ai didi

python - “float”对象不可迭代

转载 作者:行者123 更新时间:2023-11-30 23:29:12 26 4
gpt4 key购买 nike

for s in objectList:
s.ratio = 0.99

我正在尝试迭代 python 中的 Shape 对象列表,并将它们缩小。但是,我收到以下错误:

Exception TypeError: "'float' object is not iterable" in
'pysfml.system.to_vector2f' ignored

我不明白这在这种情况下意味着什么。我不会迭代 float ...以及类似的东西:

for s in objectList:
print(s)

按我的预期工作。

想法?

编辑:print(type(objectList)) 打印class 'list'

没有其他错误。

最佳答案

ratio必须是 2-向量:

for s in objectList:
s.ratio = sfml.system.Vector2(0.99, 0.99)

该属性的 setter 发现给定值不是向量,因此它尝试通过迭代将其转换为向量。显然,0.99 无法迭代,因此会出现错误。

但是,元组可以迭代。因此,2 元组也可以工作,并且会被属性的 setter 自动转换为 2 向量:

for s in objectList:
s.ratio = 0.99, 0.99

关于python - “float”对象不可迭代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21246081/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com