Python 3.x - Как вернуть значение из функции, требующей аргументов - PullRequest
0 голосов
/ 07 мая 2019

В предисловии я скажу, что я не программист, и это первое сообщение на форуме, которое я делаю в StackOverflow. Я пытаюсь найти способ вернуть значение из функции, чтобы я мог использовать его в отдельном файле .py. Я попытался сделать глобальную переменную и вернуть значение. Проблема в том, что эта функция вызывается из библиотеки, принадлежащей сторожевому таймеру.

    def on_created(event):
        import Check_Resume
        srcpth = event.src_path
        head, path, tail = srcpth.partition('\\uploads\\')
        return tail
    my_event_handler.on_created = on_created
    ResumeTitle = on_created()
    print(ResumeTitle)

Проблема здесь в том, что для функции on_created () ожидается аргумент, который имеет смысл. Я увижу ошибку ниже:

отсутствует 1 обязательный позиционный аргумент: 'событие'

Этот аргумент уже предоставлен библиотекой watchdog. Я считаю, что это вызывает функцию, которую я определил здесь. По этой причине я не знаю, какой аргумент передать. Я хотел бы иметь возможность присвоить возвращаемое значение из функции переменной, которую можно использовать в отдельном файле .py. Для простоты я хотел бы просто распечатать результат.

1 Ответ

0 голосов
/ 07 мая 2019

Добро пожаловать в переполнение стека.

если аргумент event задан значением из библиотеки watchdog, почему бы просто не сохранить его в переменной и использовать это?

argument_from_watchdog = function_from_watchdog(*args, **kwargs)

затем используйте это в своей функции on_created(argument_from_watchdog)

...