На второй неделе курса информатики по Python мы переходим от линейных программ к более структурированному и модульному коду. Основное внимание уделяется функциям, их параметрам, возвращаемым значениям, области видимости переменных, а также понятию модульности и повторного использования кода.
Функции позволяют разбивать код на логически обособленные блоки, что делает программы более читаемыми, масштабируемыми и удобными для тестирования.
Функция в Python определяется с помощью ключевого слова `def`. Пример:
```python```
def greet(name):
print("Привет,", name)
Вызов функции:
```python```
greet("Аня")
Функции могут принимать аргументы. Также можно задавать значения по умолчанию:
```python```
def greet(name="гость"):
print("Привет,", name)
Функция может возвращать результат с помощью ключевого слова `return`:
```python```
def square(x):
return x * x
Локальные переменные доступны только внутри функции. Глобальные переменные можно читать, но изменять — только с ключевым словом `global`.
```python```
count = 0
def increment():
global count
count += 1
Функции позволяют повторно использовать код, а также упрощают отладку. Вместо копирования блоков кода можно вызывать функцию.
Важно: каждая функция должна решать одну задачу.
Python предоставляет большое количество встроенных функций: `len()`, `range()`, `int()`, `str()`, `abs()`, `sum()` и др.
Также доступны модули стандартной библиотеки:
```python```
import math
print(math.sqrt(16))
Файл с функциями можно сохранить как модуль и использовать в других программах:
`mymodule.py`:
```python```
def say_hello():
print("Hello!")
Основной файл:
```python```
import mymodule
mymodule.say_hello()
1. Напишите функцию, возвращающую факториал числа.
2. Реализуйте функцию, проверяющую, является ли строка палиндромом.
3. Разделите код калькулятора на функции.