choices sur output
un truc qui pourrait être marrant dans le argparse, serait de proposer un choices
valide en fonction de ce qu'il y a de dispo en plugin de sortie, genre :
# app.py
import os
import sys
from argparse import ArgumentParser
from wts.readers import read
from wts.writers import write
def main():
"""Read tasks from file and display it using writer"""
parser = ArgumentParser(description="My app")
parser.add_argument("datafile")
writers = [item.split("_")[0] for item in dir("wts.writers") if item.endswith("_writer")]
parser.add_argument('--output', type=str, choices=writers, default="cli")
args = parser.parse_args()
filename = args.datafile
if not os.path.exists(filename):
sys.exit(f"{filename} not found")
data = read(filename)
write(data, args.output)
if __name__ == "__main__":
main()