|
@@ -1,3 +1,4 @@
|
|
|
+~={green}Определения:=~
|
|
|
- Функция - именованный блок кода который выполняет определенную задачу или возвращает значение.
|
|
|
* Функция - набор операторов, которые возвращают некоторое значение вызывающему объекту. В функцию также может быть передано ноль или более аргументов, которые могут использоваться при выполнении тела функции.
|
|
|
- Такое определение функций допустимо, но вторая функция перезатрет первую.
|
|
@@ -14,4 +15,31 @@ f()
|
|
|
- Любая функция в python возвращает значение. Значение возвращается при помощи оператора return. Если функция не содержит оператор return, то по умолчанию такая функция вернет значение None.
|
|
|
- Функция должна выполнять только одну операцию. Она должна выполнять ее хорошо. И ничего другого она делать не должна. Если функция выполняет только те действия, которые находятся на одном уровне под объявленным именем функции, то эта функция выполняет одну операцию.
|
|
|
- Будьте последовательны в выражениях возврата: либо все операторы return в функции должны возвращать выражение, либо ни один из них не должен. Если какой-либо оператор return возвращает выражение, то оставшиеся операторы return тоже должны явно возвращать значение, не смотря на то, что python по умолчанию возвращает None.
|
|
|
-Статья по оформлению [[https://pythonchik.ru/osnovy/imenovanie-v-python]]
|
|
|
+Статья по оформлению [[https://pythonchik.ru/osnovy/imenovanie-v-python]]
|
|
|
+
|
|
|
+~={green}Пример оформления простой функции:=~
|
|
|
+```python
|
|
|
+# is - в названии функциии
|
|
|
+# нет лишних return
|
|
|
+def is_even(x):
|
|
|
+ return x%2 == 0
|
|
|
+
|
|
|
+# пример использования без лишних сравнений
|
|
|
+number = int(input("Введите число: "))
|
|
|
+while is_even(number):
|
|
|
+ print(f'{number} является четным')
|
|
|
+ number = int(input("Введите число: "))
|
|
|
+print(f"Вы ввели нечетное число {number}, программа завершилась")
|
|
|
+```
|
|
|
+~={green}Возврат кортежа=~
|
|
|
+```python
|
|
|
+# в return можно не ставить скобки, все равно будет возвращен кортеж
|
|
|
+def calc_square_and_perimeter(a, b):
|
|
|
+ retun a * b, 2 * (a + b)
|
|
|
+```
|
|
|
+~={green}Возврат списка=~
|
|
|
+```python
|
|
|
+# в данном случае нужны скобки [ ]
|
|
|
+def calc_square_and_perimeter(a, b):
|
|
|
+ return [a * b, 2 * (a + b)]
|
|
|
+```
|