0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p>Достаточно часто возникают вопросы: "почему моя функция ничего не возвращает?!", "почему из функции возвращается None?", "не могу понять откуда появляется None...".</p>
1
<p>Достаточно часто возникают вопросы: "почему моя функция ничего не возвращает?!", "почему из функции возвращается None?", "не могу понять откуда появляется None...".</p>
2
<p>Для начала необходимо понимать и помнить, что любая функция в Python всегда что-то возвращает и если не используется оператор return для возврата значения (такие случаи бывают, но об этом позднее), то функция возвращает объект None. В случае если return используется, но после него ничего не указывается явно, то по умолчанию считается, что там стоит объект None.</p>
2
<p>Для начала необходимо понимать и помнить, что любая функция в Python всегда что-то возвращает и если не используется оператор return для возврата значения (такие случаи бывают, но об этом позднее), то функция возвращает объект None. В случае если return используется, но после него ничего не указывается явно, то по умолчанию считается, что там стоит объект None.</p>
3
<p>Порой бывает, что по ошибке указывается возврат вместе с функцией print(). Для информации функция print() в Python выводит переданные аргументы на стандартное устройство вывода (экран), но при этом не возвращает значений, т.е. можно считать, что возвращает None.</p>
3
<p>Порой бывает, что по ошибке указывается возврат вместе с функцией print(). Для информации функция print() в Python выводит переданные аргументы на стандартное устройство вывода (экран), но при этом не возвращает значений, т.е. можно считать, что возвращает None.</p>
4
<p>Если дальше по коду проводятся манипуляции с переменной b, например сложение, то возникнет ошибка TypeError:</p>
4
<p>Если дальше по коду проводятся манипуляции с переменной b, например сложение, то возникнет ошибка TypeError:</p>
5
<p>Возможен вариант, когда функция и не должна ничего возвращать, она производит какие-либо действия с объектами в глобальной зоне видимости и на этом ее функционал заканчивается. В таком случае return может и не использоваться, но необходимо помнить, что в этом случае функция возвращает None.</p>
5
<p>Возможен вариант, когда функция и не должна ничего возвращать, она производит какие-либо действия с объектами в глобальной зоне видимости и на этом ее функционал заканчивается. В таком случае return может и не использоваться, но необходимо помнить, что в этом случае функция возвращает None.</p>
6
<p>В примере выше использовался метод работы со списками extend() и необходимо понимать, что метод изменяет объект, к которому применен, а не возвращает результат изменения объекта.</p>
6
<p>В примере выше использовался метод работы со списками extend() и необходимо понимать, что метод изменяет объект, к которому применен, а не возвращает результат изменения объекта.</p>
7
7