google / google/python-fire

Proper way to do tear-up/tear-down?

Offen
#242 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Vorherrschende Sprache
Python
Sterne
28.2k
Forks
1.5k
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beschreibung

I have a pipeline tool that opens a file in `__init__`, mutates `self.nwbfile` using chained commands, and finally writes to disk & closes file. Right now I'm using `__str__` for this. Is this a reasonable pattern, or is there a better way?

```python
class CLI(object):
"""Facilitate writing a Neurodata without borders (NWB) file."""

def __init__(self, filepath):
self.io = NWBHDF5IO(filepath, 'a')
self.nwbfile = io.read()
self.filepath = filepath

def noop(self):
"add nothing to nwbfile"
return self

def __str__(self):
"""Write data & close io."""
if not self.io is None:
if not self.nwbfile is None:
self.io.write(self.nwbfile)
self.io.close()
return f"Wrote to {self.filepath}"

if __name__ == '__main__':
fire.Fire(CLI)
```

Beitragsleitfaden

Beitragsleitfaden öffnen

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.