Я пытаюсь автоматизировать поток, и я столкнулся с проблемой с "doit", потому что он запускает все функции внутри dodo.py, и я не хочу, чтобы это делалось.
Яработа на Python 2.7 с использованием функции "doit".Ниже приведена часть кода из файла dodo.py.Проблема в том, что когда я пытаюсь запустить «список doit» (базовая функция из doit), он также печатает эти 2 сообщения из моих функций.
Я пытался установить DOIT_CONFIG, я пыталсяиспользуйте «uptodate: [True]», но ничего из этого не сработало.
Я читал в интернете, что python выполняет команды в 2 этапа.На первом этапе он запускает все функции, а после этого выполняет команду, которую вы написали.
Я хочу спросить, есть ли способ отключить эту «функцию»?Все, что я хочу, это запустить «список точек» без вызова задач «настройка» и «тест», потому что задача «тест» печатает текст и ожидает ввода, даже если «список точек» не нуждается в них.
Есть ли способ сказать "doit" не выполнять какую-либо функцию, если я не вызову их?Поскольку нет никаких зависимостей, я думаю, что должен быть способ, но я не смог его найти.
def task_setup():
print("Doing setup")
a = 3
return a
def task_test():
items = os.listdir(pd_audit_path)
fileList = []
for names in items:
if names.startswith(pd_step):
fileList.append(names)
cnt = 0
for fileName in fileList:
sys.stdout.write( "[%d] %s\n\r" %(cnt, fileName) )
cnt = cnt + 1
fileName = int(input("\n\rSelect run [0 - " + str(cnt - 1) + "]: "))
path = fileList[fileName]
return {
'file_dep': [],
'actions': ['The path is: %s',%(path)],
'params':[{'name':'all', 'long': 'all', 'type': bool,
'default': True, 'help': 'all relevant reports'},],
'verbosity': 2,
}
Когда я вызываю «doit list», я ожидаю список со всеми задачами от dodo.py, но он также печатает сообщения из задач «setup» и «test».