Чтобы очистить все локальные переменные в Python, вы можете использовать следующие методы:
Метод 1: выполнение нового пустого пространства имен
import sys
def clear_locals():
# Get current local namespace
frame = sys._getframe(1)
local_vars = frame.f_locals
# Clear local variables
local_vars.clear()
# Example usage
x = 10
y = "Hello"
z = [1, 2, 3]
print(x, y, z) # Output: 10 Hello [1, 2, 3]
clear_locals()
print(x, y, z) # NameError: name 'x' is not defined
Метод 2: использование функции locals()
def clear_locals():
# Get current local namespace
local_vars = locals()
# Clear local variables
local_vars.clear()
# Example usage
x = 10
y = "Hello"
z = [1, 2, 3]
print(x, y, z) # Output: 10 Hello [1, 2, 3]
clear_locals()
print(x, y, z) # NameError: name 'x' is not defined
Способ 3. Перезагрузка модуля
import sys
import my_module # Replace 'my_module' with your module name
def clear_locals():
# Get current module name
module_name = __name__
# Clear local variables
module = sys.modules[module_name]
module.__dict__.clear()
# Example usage
my_module.x = 10
my_module.y = "Hello"
my_module.z = [1, 2, 3]
print(my_module.x, my_module.y, my_module.z) # Output: 10 Hello [1, 2, 3]
clear_locals()
print(my_module.x, my_module.y, my_module.z) # NameError: name 'my_module' is not defined
Эти методы позволяют очистить все локальные переменные в Python. Первые два метода очищают локальные переменные внутри функции или скрипта, а третий метод очищает локальные переменные внутри модуля.