Локальные переменные изменяются непреднамеренно в Python - PullRequest
0 голосов
/ 23 апреля 2019

У меня есть пандас фрейм данных "df", к которому я применяю несколько функций Я не хочу изменять значения исходного кадра данных. Все мои функции выглядят так:

def func(x):
# do some stuff with x
return x

 y = func(x=df)

Я не ссылаюсь на переменную df внутри функции. Но переменная все равно меняется. Может кто-нибудь объяснить мне, почему это так и как этого избежать?

1 Ответ

1 голос
/ 23 апреля 2019

Отправить глубокую копию кадра данных

y = func(x=df.copy())

Что по умолчанию является глубокой копией.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...