0
初学者在这里有一个非常简单的问题 - 我想在球体内创建6个球体,一个在中间红色,一个在外面黑色,休息在两者之间。我遇到了颜色问题 - 我得到的错误是“对非序列类型的迭代”。这是我的代码到目前为止:在for循环中改变球的颜色(python/rhino)
import rhinoscriptsyntax as rs
import random
maxNum=6
a=(1/maxNum)
pt0 = [50,50,50]
pts = []
pts.append(pt0)
for i in range (0,6):
sphere0= rs.AddSphere(pt0, 30*i)
rs.ObjectColor (sphere0, [(i+1)*2.55,0,0])
非常感谢!
我很确定这不是错误消息。请告诉我们它是如何读取的以及它在哪一行发生的。更好的是给一个完整的追溯。 –
OK,以下是完整回溯: 消息:遍历所有类型的非序列NoneType 回溯: 线423,在ObjectColor,“/用户/学生/库/ Application Support/McNeel /犀牛/ MacPlugIns/IronPython的/ settings/lib/rhinoscript/object.py“ line 18,in,”/Users/students/Desktop/imagination.py“ –
Ava
对不起,我以前没有看到您的回复。回溯告诉你,在ObjectColor的第423行中,试图迭代一个无对象的对象。这就是“类型类型”的意思。这个函数是从脚本的第18行调用的。脚本的最后一行确实有对ObjectColor的调用,所以这很有意义。你传递了两个参数给这个函数。第二个是列表,所以它不可能是None。所以另一个是问题,什么是sphere0 - 来自AddSphere的返回值?你为什么不打印出来看看它是什么? –