Модули и функции · встроенный MicroPython FEMM 5
copy
Копирование наборов параметров и вложенных контейнеров.
copy.copycopy.deepcopycopy.copyСоздаёт отдельный внешний контейнер, сохраняя ссылки на вложенные объекты.
copy.copy
copy(x)Создаёт отдельный внешний контейнер, сохраняя ссылки на вложенные объекты.
Аргументы
| Имя | Назначение и допустимые значения |
|---|---|
x | Объект для поверхностного копирования. |
Возвращаемое значение
Копия либо исходный неизменяемый объект.
Пример
"Пример copy.copy.\nСреда: встроенный MicroPython FEMM 5.\nСоздаёт отдельный внешний контейнер, сохраняя ссылки на вложенные объекты.\nРезультат: Копия либо исходный неизменяемый объект."
import copy
a = [[100]]
b = copy.copy(a)
assert b is not a and b[0] is a[0]
Ожидаемый результат. Проверки assert проходят без исключения.
Скачать пример · Ссылка на функцию
Этот пример выполнен в установленном FEMM 5.
copy.deepcopyКопирует вложенные контейнеры, сохраняя повторные ссылки через memo.
copy.deepcopy
deepcopy(x, memo=None, _nil=[])Копирует вложенные контейнеры, сохраняя повторные ссылки через memo.
Аргументы
| Имя | Назначение и допустимые значения |
|---|---|
x | Объект для рекурсивного копирования. |
memo | Служебный словарь уже скопированных объектов; обычно None. |
_nil | Внутренний параметр, не задавайте. |
Возвращаемое значение
Независимая глубокая копия поддерживаемого объекта.
Пример
"Пример copy.deepcopy.\nСреда: встроенный MicroPython FEMM 5.\nКопирует вложенные контейнеры, сохраняя повторные ссылки через memo.\nРезультат: Независимая глубокая копия поддерживаемого объекта."
import copy
a = [[100]]
b = copy.deepcopy(a)
b[0][0] = 200
assert a[0][0] == 100
Ожидаемый результат. Проверки assert проходят без исключения.
Скачать пример · Ссылка на функцию
Этот пример выполнен в установленном FEMM 5.