Python usa
call by sharing lo cual es bastante parecido a Java.
Básicamente siempre pasas la referencia del objeto, solo toma en cuenta que algunos objetos son mutables y otros son inmutables y eso es todo.
En tu caso puedes hacer 2 cosas.
1.- Si varios métodos comparten variables, entonces una clase probablemente seria una buena idea.
2.- Si solamente es este caso en particular entonces puedes enviar dos parámetros extras. Lista_costos y Lista_nodos, que sean variables que ya tengas antes de la función. Pero no recomiendo mucho este método.