Может быть стоит переписать через getattr ?