Вызов вложенной функции в Python

У меня есть метод, который я разбил на меньшие вложенные функции, чтобы разбить код базы:

def foo(x,y):
    def do_this(x,y):
        pass
    def do_that(x,y):
        pass
    do_this(x,y)
    do_that(x,y)
    return

Есть ли способ запустить одну из вложенных функций самостоятельно. например:

foo.do_this(x,y)

EDIT:

Я пытаюсь настроить кэширование на веб-сервере, который я создал с помощью pyramid_breaker

def getThis(request):
    def invalidate_data(getData,'long_term',search_term):
         region_invalidate(getData,'long_term',search_term)
    @cached_region('long_term')
    def getData(search_term):
         return response
    search_term = request.matchdict['searchterm']
    return getData(search_term)

Это моё понимание может быть неточным

Теперь у меня есть причина в том, что пространство имен, используемое декоратором для создания ключа кэша, генерируется из функции и аргументов. Поэтому вы не можете просто поместить декоратор в getThis, поскольку переменная запроса уникальна, а кеш бесполезен. Поэтому я создал внутреннюю функцию, которая имеет повторяемые аргументы (search_term).

Однако для аннулирования кэша (т. Е. Обновления) функция аннулирования требует, чтобы область действия знала «getData». Функция так и должна быть вложенной. Поэтому мне нужно вызвать вложенную функцию. Вы, замечательные люди, ясно дали понять, что это невозможно, поэтому кто-то может объяснить, как я могу сделать это с другой структурой?

Ответы на вопрос(6)

Ваш ответ на вопрос