Python的二维数组中是否存在别名?

马坎西

我知道列表别名是Python中的一个问题,但我想不出办法。

def zeros(A):
    new_mat = A
    for i in range(len(A)):
        for j in range(len(A[i])):
            if A[i][j]==0:
                for b in range(len(A)):
                    new_mat[b][j] = 0
            else:
                new_mat[i][j] = A[i][j]
    return A

即使我根本不更改A的​​值,当我返回A时,它仍然被修改:

>>> Matrix = [[1,2,3],[5,0,78],[7,3,45]]
>>> zeros(Matrix)
[[1, 0, 3], [5, 0, 78], [7, 0, 45]]

这个列表是别名吗?如果是这样,如何在不发生别名的情况下修改2D数组的元素?谢谢,谢谢<3。

扬·韦尼尔(Yann Vernier)

new_mat = A不会创建新矩阵。您只是给对象也赋予了新的名称A如果是数字列表,则可能要使用copy.deepcopy创建完整副本;如果是numpy数组,则可以使用copy方法。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

打字稿:搜索二维数组中是否存在数组(行)

来自分类Dev

二维数组python中的邻居

来自分类Dev

在python中索引二维数组

来自分类Dev

将二维数组保存在指针数组中

来自分类Dev

检查值是否存在于二维选项卡(数组,vb)中

来自分类Dev

检查二维数组中列表的存在

来自分类Dev

Python二维数组

来自分类Dev

Python二维数组

来自分类Dev

检查二维数组中的值是否等于“#”

来自分类Dev

检查二维数组中的值是否为空

来自分类Dev

如何检查二维数组是否在另一个二维数组中

来自分类Dev

如何检查二维数组是否在另一个二维数组中

来自分类Dev

在Python中读取二维数组的简单方法

来自分类Dev

如何在python中对二维数组进行排序

来自分类Dev

在Python中获取二维数组的乘积

来自分类Dev

在Python 3.x中求和二维数组

来自分类Dev

在二维python数组中搜索值

来自分类Dev

Python保存并读取二维数组中的灰度图像?

来自分类Dev

在Python中寻找二维数组的平均值

来自分类Dev

二维数组,用于python中的加密

来自分类Dev

在python中创建动态二维数组(循环)

来自分类Dev

在二维Python数组中查找元素

来自分类Dev

python增加二维数组中的值

来自分类Dev

Python中的二维数组索引错误

来自分类Dev

追加到python中的二维数组

来自分类Dev

在python中将对象存储在二维数组中?

来自分类Dev

如何调用二维python数组中的元素

来自分类Dev

Python for循环仅将最后一个循环保存在我的二维数组中

来自分类Dev

Javascript:检查二维数组是否在第一维中包含元素