Obter o __arquivo__ da função um nível acima na pilha

Eu descobri que estou usando muito esse padrão:

os.path.join(os.path.dirname(__file__), file_path)

então eu decidi colocar em uma função em um arquivo que tem muitos utilitários pequenos:

def filepath_in_cwd(file_path): 
    return os.path.join(os.path.dirname(__file__), file_path)

A coisa é,__file__ retorna oatual arquivo e, portanto, a pasta atual, e eu perdi o ponto inteiro. Eu poderia fazer isso feio hack (ou apenas continuar escrevendo o padrão como é):

def filepath_in_cwd(py_file_name, file_path): 
    return os.path.join(os.path.dirname(py_file_name), file_path)

e então a chamada para ele ficará assim:

filepath_in_cwd(__file__, "my_file.txt")

mas eu preferiria se tivesse um jeito de conseguir__file__ da função que é um nível acima na pilha. Existe alguma maneira de fazer isso?

questionAnswers(1)

yourAnswerToTheQuestion