Python将值从一个变量分配给另一个

Stekepego

我正在尝试实施某种本地搜索。为此,我有两个数组,它们代表一个列表,我正在尝试对其进行优化。因此,我有一个阵列作为当前最好的阵列,而我正在分析一个阵列。

一开始,我将对数组进行混洗,并将当前的最佳数组设置为混洗后的数组。

random.shuffle(self.matchOrder)
self.bestMatchOrder = self.matchOrder

然后,我在阵列中交换了一个随机的邻居对。现在的问题是,当我交换中的值时self.matchOrder,将交换中的值self.bestMatchOrder

a = self.matchOrder[index]
self.matchOrder[index] = self.matchOrder[index + 1]
self.matchOrder[index + 1] = a

“索引”作为参数提供给函数,它只是随机生成的数字。

我猜我在分配变量时做错了,但我不知道是什么。那么,我该怎么做才能仅将数组的值分配给另一个数组,而不使它也应用相同的更改呢?

成功

当您使用self.bestMatchOrder = self.matchOrderThen Python时,它们不会分配新的内存位置,self.bestMatchOrder而是都指向相同的内存位置。并且知道列表是可变数据类型这一事实,因此对所做的任何更改都self.matchOrder将反映在中self.bestMatchOrder

import copy

self.bestMatchOrder = copy.deepcopy(self.matchOrder)

但是,如果使用线性列表或简单列表,也可以使用。self.bestMatchOrder = self.matchOrder[:]但是如果您使用的是嵌套列表,则deepcopy()是正确的选择。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用扫描仪值分配给另一个类的变量?

在Python中将一个变量的值分配给另一个变量时会发生什么?

如何将另一个文件中的变量分配给类常量?

为什么将一个变量的值分配给另一个变量在python中保留在内存中?

Javascript 2个对象数组,从一个对象数组获取一个值并将其分配给另一个对象数组

我可以将CSS变量分配给另一个变量吗?

如何将值从一个对象分配给另一个

如何将公式的值(包含变量)分配给另一个变量

在for循环Python中的if语句中,将一个键的值分配给另一个键

如何将特定属性从一个对象分配给另一个

比较数据框内的日期并将值分配给另一个变量

将$ PWD / *分配给另一个变量

如何选择CSS变量并将样式值分配给另一个元素

将struct的第一个变量分配给另一个

使用循环按等级将值从一个数据帧分配给另一个数据帧

如何将值从一个哈希集分配给另一个?

如何将变量列表分配给另一个列表

根据主题编号将值从一个数据框分配给另一个数据框

将另一个网页的特定数据分配给变量或数组

PHP将php变量分配给另一个php条件

将const变量的成员分配给另一个const

将$ @分配给Shell函数中的另一个变量

bash在操作后将变量分配给另一个

python即使将输入变量分配给另一个变量,如何更改它的值?

无法将结构变量分配给另一个结构变量

HTML - 如何将文本值分配给另一个属性的值?

如何将值从一个数据类分配给另一个数据类

TypeScript 将枚举值分配给另一个枚举值

将一个分配的指针分配给另一个分配的指针