Каков наилучший (или «Pythonic») способ проверить, определен ли в классе определенный метод?
Обе эти работы работают, но во втором они не кажутся «правильными», я просто пытаюсь получить к ним доступ и получить исключение, если оно не существует.Есть ли лучший / более правильный путь?
class TestClass(object):
def TestFunc(self):
pass
if 'TestFunc' in dir(TestClass):
print 'yes'
else:
print 'No'
try:
if TestClass.__getattribute__(TestClass, 'TestFunc'):
print 'yes'
except:
print 'No'