Bu sınıfta tanımlı olmayan, ancak dinamik olarak işlenen bir sınıf yöntemini kullanmanın bir yolunu arıyorum. Bir örnek almaya, elde etmek istiyorum Ne, bunları açıkça tanımlamak gerek kalmadan sınıf içinde aaa
ve bbb
(ve diğerleri) kullanılarak olasılığınaPython'da "joker yöntem" var mı?
class Hello:
def aaa(self, msg=""):
print("{msg} aaa".format(msg=msg))
def bbb(self, msg=""):
print("{msg} bbb".format(msg=msg))
if __name__ == "__main__":
h = Hello()
h.aaa("hello")
h.bbb("hello")
# hello aaa
# hello bbb
hareket etmektir. Yukarıdaki örnekte, kullanılan yöntemin adını (örneğin, aaa
) alan ve buna göre bir mesajı biçimlendiren bir yapı olacaktır. Diğer bir deyişle, isminin yerine geçecek ve isme bağlı olarak koşullu eylemler gerçekleştirebilecek bir "joker yöntem". Sözdizim kodunda (yukarıdaki örneği çoğaltmak için)
def *wildcard*(self, msg=""):
method = __name__which__was__used__to__call__me__
print("{msg} {method}".format(msg=msg, method=method))
Böyle bir yapı mümkün mü?