Obtenga el __archivo__ de la función un nivel arriba en la pila

He encontrado que estoy usando este patrón mucho:

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

así que decidí poner una función en un archivo que tiene muchas de estas pequeñas utilidades:

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

La cosa es,__file__ devuelve elcorriente archivo y por lo tanto la carpeta actual, y me he perdido todo el punto. Podría hacer este truco feo (o simplemente seguir escribiendo el patrón como está):

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

y luego la llamada se verá así:

filepath_in_cwd(__file__, "my_file.txt")

pero preferiría que tuviera una manera de obtener el__file__ de la función que es un nivel arriba en la pila. ¿Hay alguna manera de hacer esto?

Respuestas a la pregunta(1)

Su respuesta a la pregunta