Ho uno strumento CLI Python che il mio dipartimento usa per elaborare un file excel aiutato da un yaml. Ho provato a disegnare qui un flusso di lavoro di base:
Passaggio1:l'utentescaricaunxlsx,loinserisceinunfile,eseguetool--preprocesscheaccettaalcuniinputA,B,Ceilnomedelfile.Questopassaggiononfanulla,vedilamiadomandaquisotto.
Passaggio2:l'utenteeseguetool--startdovedannoglistessiinput.Tuttaviaquestavoltausaisuoiinputeilxlsxpergenerareunyaml.
Passaggio3:l'utenteterminal'aggiornamentodiyamledeseguetool--buildcherichiedesolounyamleunxlsxeloconverteinunpdfgigante.
Unacosachehonotatoèchealcunideimieiutentistannofacendodituttoperapportarealcunemodificheaifileperchésonouncasolimite.Adesempio:potrebberocrearealcunifoglidilavoroprimadiutilizzaretool--start.
Eccolamiadomanda:comepossoconsentireagliutentidi"agganciarsi" a ogni passaggio, cioè, consentire loro di scrivere un file / funzione python personalizzato che viene salvato in un file diverso (non voglio avere un utente personalizzato rendere tutte le funzionalità):
Quindi anziché:
def preprocess():
# do stuff
if input == "A":
# user 1 code
if input == "B":
# user 2 code
# convert to expected form
Forse potrebbero spingere verso l'alto un file come "A.py" che ha def overload_preprocess() e quindi lo strumento dovrebbe importare il file ed eseguire la loro funzione a seconda dei loro input?
