假设我有两个变量:“choice” = ii7 和“scale” = C。
该库具有通过运行以下命令来计算任何特定音乐和弦中的音符的功能:
chords.ii7(音阶)
当 scale = C 时,它将以 C 的音阶列出 ii7 和弦的音符。
如果我必须使用变量“choice”代替在代码本身中包含 ii7,我该怎么做呢?如果我知道要搜索什么,搜索肯定会容易得多,但我完全是初学者。这只是为了完成这个特定程序的其余部分,并学习一些新东西。抱歉,如果我用错了标题。提前致谢!
假设我有两个变量:“choice” = ii7 和“scale” = C。
该库具有通过运行以下命令来计算任何特定音乐和弦中的音符的功能:
chords.ii7(音阶)
当 scale = C 时,它将以 C 的音阶列出 ii7 和弦的音符。
如果我必须使用变量“choice”代替在代码本身中包含 ii7,我该怎么做呢?如果我知道要搜索什么,搜索肯定会容易得多,但我完全是初学者。这只是为了完成这个特定程序的其余部分,并学习一些新东西。抱歉,如果我用错了标题。提前致谢!
采用getattr
getattr(chords, choice)(scale)
这是假设choice = 'ii7'
。
getattr
基本上有两个参数——第一个是对象,第二个是字符串。它搜索与字符串同名的属性,并返回它。在这种情况下getattr(chords, choice)
,chords.ii7
您必须调用它。