Запускать функции без возврата значений в Python

Сейчас я работаю с кодом, который использует функции, которые делают что-то полезное, но ничего не возвращают.

def foo():
    # Do something useful here
    # Does not return anything

foo()

Мои вопросы:

  1. Должен ли я на самом деле использовать такие функции?
  2. Если да, то как мне это сделать правильно? (Я пытался найти что-то об этом в PEP8, но мне не удалось)
  3. Правильно ли запускать функции в скрипте без присваивания?

2 ответа

Ответ на все ваши вопросы: да. В этом нет ничего плохого.

Вы можете запускать функции без оператора возврата в Python. Это будет полезно, когда вы просто хотите что-то напечатать, или когда вы хотите изменить изменяемую структуру данных или по какой-либо другой причине. Это похоже на Java public void method где вам не нужно никакого возврата.

Пример:

    def helloWorld():
        print("Hello World!")

    if __name__ == "__main__":
        helloWorld()

Выход:

>>> Hello World!
Другие вопросы по тегам