Вы думаете о карри, где вы связываете вместе функцию и аргументы для последующего вызова. Обычно каррирование используется для добавления дополнительных аргументов во время фактического вызова функции.
Вместо того, чтобы переписать колесо, вот ссылка на пример: http://code.activestate.com/recipes/52549/.
Если, однако, случай, который вы смоделировали в вопросе, действительно настолько прост, вы можете передать список аргументов в качестве позиционных параметров или список kwargs в качестве именованных параметров другой функции.
def method1(name):
return 'Hello %s' % name
args = ['Joe']
method1(*args)
def method1a(name=None, salutation=None):
return 'Hello %s %s' % (name, salutation)
kwargs = {'name':'Joe', 'salutation':'Mr'}
method1a(**kwargs)