операции, выполняемые с пустым массивом внутри модуля, влияют на переменные вне модуля - PullRequest
0 голосов
/ 20 мая 2018

У меня возникла эта проблема, и я не уверен, почему это происходит, и почему это происходит не со всеми переменными.Я написал алгоритм оптимизации для нескольких параметров.Например, у меня есть два многомерных массива numpy "параметры" - это 3-мерный массив, а "лямбда" - 2-мерный массив

. Я обобщу код, поскольку он состоит из нескольких сотен строк

parametersOpt,lambdaOpt=myOptModule(parameters,lambda)

def myOptModule(parameters,lambda):
    **Optimization code here**
     parameters=parameters-delta_parameters
     lambda=lambda-delta_lambda

    return parameters, lambda

происходит то, что код выполняется, и по какой-то причине переменная «параметры» изменяется и становится такой же, как «parametersOpt», она меняется автоматически даже в случае выполнения операций внутри модуля, а это не относится к переменной «лямбда», лямбдаи lambdaOpt не такие, как следовало ожидать.Есть идеи?Я пытаюсь изменить имена переменных внутри и снаружи модуля, но это не сработало

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