Этот вариант будет работать. Лучше, чтобы подстраховаться, в каждом методе закрывать файл:

```python
with open(report_path) as report:
    self.report.write(...)
```