我很想定义我的Python类:
class MyClass(object):
"""my docstring"""
msg = None
a_variable = None
some_dict = {}
def __init__(self, msg):
self.msg = msg
Run Code Online (Sandbox Code Playgroud)
声明对象变量(msg,a_variable等)在顶部,如Java好还是坏或无关紧要?我知道这是不必要的,但仍然很有诱惑力.
我目前正在这样做,根据对象的类型做不同的事情:
actions = {
SomeClass: lambda: obj.name
AnotherClass: lambda: self.normalize(obj.identifier)
...[5 more of these]...
}
for a in actions.keys():
if isinstance(obj, a):
return actions[a]()
Run Code Online (Sandbox Code Playgroud)
是否可以删除for循环,并执行类似的操作?
actions[something to do with obj]()
Run Code Online (Sandbox Code Playgroud)