我需要一个枚举类的双重继承,但也支持我自己的方法。这是上下文:
import abc
from enum import Enum
class MyFirstClass(abc.ABC):
@abc.abstractmethod
def func(self):
pass
class MySecondClass(Enum, MyFirstClass):
VALUE_1 = 0
VALUE_2 = 1
def func(self):
return 42
Run Code Online (Sandbox Code Playgroud)
的声明MySecondClass会产生以下错误:
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
Run Code Online (Sandbox Code Playgroud)
我尝试通过执行以下操作来应用此 stackoverflow 解决方案:
class MyMetaClass(type(Enum), type(MyFirstClass)):
pass
class MyFinalClass(Enum, MyFirstClass, metaclass=MyMetaClass):
VALUE_1 = 0
VALUE_2 = 1
def func(self):
return 42
Run Code Online (Sandbox Code Playgroud)
但我收到以下错误:
TypeError: new enumerations should be created …Run Code Online (Sandbox Code Playgroud)
我正在努力处理多面体表示。
我有一组定义凸多面体的顶点(在 3D 中)。我想绘制它。
我可以轻松地以 3D 形式表示整个多面体或其在 2D 中的投影。但是我找不到一个包(在 R 或 Python 中)来用绘图上的颜色表示的第三个组件在 2D 中表示它。
例如,如果我有这样一组顶点:
array([[0., 0., 0.],
[1., 0., 0.],
[0., 1., 0.],
[1., 1., 0.],
[0., 0., 1.],
[1., 0., 1.]])
Run Code Online (Sandbox Code Playgroud)
在 3D 中,您将获得:

我想要的是 Z 轴上的上包络,它应该像这样:

(当然减去轮廓......)。如果您有任何想法如何解决这个表示问题,我会全力以赴!
谢谢