Cómo hacer referencia a rutas relativas de recursos cuando se trabaja con un repositorio de código

| | | | | | | | | | |

Estamos trabajando con un repositorio de código que se implementa tanto en Windows como en Linux, a veces en directorios diferentes. ¿Cómo debería uno de los módulos dentro del proyecto hacer referencia a uno de los recursos que no son de Python en el proyecto (archivos CSV, etc.)?

Si hacemos algo como:

< código>elarchivo=abrir("prueba.csv") 

o:

elarchivo=abrir("../algúndirectorio/prueba.csv") 

Funcionará solo cuando el script se ejecute desde un directorio específico o un subconjunto de los directorios.

Lo que me gustaría hacer es algo como:

path=getBasePathOfProject()+"/somedirectory/test.csv" thefile=open(path) 

¿Es posible?