我试图写出一个三维物体的坐标,但我不知道如何列出它。在
到目前为止,我已经:
class threed:
def __init__(self,length,width,height):
self.h =height
self.l = length
self.w = width
self.f=0
self.lwh = (length,width,height)
for i in range(1,3):
for j in range(1,3):
for k in range(1,3):
coordinates=threed(i,j,k)
问题是我的函数每次都重写变量坐标,这样我就不能访问坐标(1,1,1)。在
请注意,以上是针对2x2x2对象的。在
如何高效地编写它,以便可以根据需要引用任何坐标?在
您可以:
拥有每一件物品。您还可以使用3
^{pr2}$for
循环:将
__repr__
方法添加到类中,可以更容易地看到结果。在所以第一个代码的输出是:
要允许比较
threed
对象,可以添加__eq__
方法:在
coordinates=threed(i,j,k)
之后,您可以将坐标添加到字典中,以便以后高效地访问。在比如:
然后有一个
^{pr2}$obj3d
字典,可以执行以下操作:当然,您可以使用
itertools
等来整理您生成坐标的方式,但是我将这个答案集中在以后获得一个有效的访问坐标的方法上。在相关问题 更多 >
编程相关推荐