Какую высокоуровневую задачу Вы пытаетесь решить таким образом?
То, что Вы пытаетесь сделать, невозможно, метод существует не в контексте конкретного объекта, а в контексте класса. После того, как Вы делаете
testobj.f = obj.funk
testobj.f уже не имеет отношения к полям объекта obj. Вызов метода объекта можно рассматривать как применение метода к конкретному объекту (считайте, что это еще один имплиситный параметр метода), так вот, у вызова testobj.f() уже нет информации об obj, в качестве имплиситного параметра в f попадет testobj. - здесь написана фигня, смотрите комментарии.