最终希望创建一个随机音乐规模发生器。我正在为每种模式构建类,并希望使用主尺度或小尺度作为真或假boolyan作为起点。
有人能告诉我覆盖Mode2的这个属性有什么进展吗?在
这是我的代码:
class Mode():
def __init__(self,title,major):
self.title = title
self.major= True
def __str__(self):
return "Title: {}, Major: {}".format(self.title,self.major)
Mode1 = Mode("Ionian", "Major")
print(Mode1)
class Mode2(Mode):
def major(self):
print(False)
Mode2 = Mode("Dorian", "Minor")
print(Mode2)
尝试一个更规范的设计。首先,我修改了变量和属性以反映python命名约定:major=>;ismajor、canonical case等
在此基础上,我编写了一个子类初始化,它调用父类的
init
,然后进行所需的更改。不过,我对major
参数有点困惑:忽略它并根据所使用的类强制大多数参数。不管怎样,以下是我对你的设计进行修改的结果:输出:
^{pr2}$如果我这样做,我会更简化:去掉不同的模式类,并参数化一个类:
输出:
相关问题 更多 >
编程相关推荐