Встречается на собеседованиях • сегодня
Как изнутри тела функции можно изменить глобальный объект
В Python для изменения глобальной переменной внутри функции нужно использовать ключевое слово global. Без этого интерпретатор создаст локальную переменную вместо изменения глобальной.
python
x = 10
def modify_global():
global x
x = 20 # изменяем глобальную переменную
modify_global()
print(x) # 20
text
Если глобальная переменная является изменяемым объектом (список, словарь и т.д.), можно изменять его содержимое без `global`, но переприсваивание потребует `global`:
```python
items = [1, 2, 3]
def modify_list():
items.append(4) # работает без global
def reassign_list():
global items
items = [5, 6] # требует global
modify_list()
print(items) # [1, 2, 3, 4]
reassign_list()
print(items) # [5, 6]
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы