numpy 数组拷贝地址所引起的同步替换问题
作者:易烊千蝈 发布时间:2023-11-07 18:00:06
标签:numpy,数组拷贝,替换
问题出现原因
python里numpy默认的是浅拷贝,即拷贝的是对象内存地址,导致两个数据结构共用一个内存地址。结果是修改拷贝的值的时候原对象也会随之改变,如代码所示:
a = np.arange(3)
print(a)
b = a
print(b)
b[0] = 10
print(b)
print(a)
输出的结果为:
[0 1 2]
[0 1 2]
[10 1 2]
[10 1 2]
解决方案
其实numpy给我们准备了解决方法,使用copy方法即可:
narray.copy()
还以上面的数据为例进行展示:
a = np.arange(3)
print(a)
b = a.copy()
print(b)
b[0] = 10
print(b)
print(a)
输出的结果为:
[0 1 2]
[0 1 2]
[10 1 2]
[0 1 2]
达到了只修改一个数据结构的要求!
来源:https://blog.csdn.net/weixin_39490300/article/details/128104405


猜你喜欢
- 实例如下所示:import matplotlib.pyplot as pltplt.imshow(img)#控制台打印出图像对象的信息,而图
- 本文实例讲述了PHP实现按之字形顺序打印二叉树的方法。分享给大家供大家参考,具体如下:问题请实现一个函数按照之字形打印二叉树,即第一行按照从
- 本文介绍了笔者通过python程序实现某OA系统自动考勤打卡功能及相关逻辑原理的解析。Github: https://github.com/
- 本文实例为大家分享了opencv实现图像校正的具体代码,供大家参考,具体内容如下1.引言:python实现倾斜图像校正操作2.思路流程:(1
- 前言:最近写爬虫会经常遇到一些验证码识别的问题,现如今的验证码已经是五花八门,刚开始的验证码就是简单的对生成的验证码图片进行一些干扰,但是随
- 用了腾讯QQ也有将近十年了,今天心血来潮想模仿腾讯QQ的登陆面板做一个web版的登陆面板,然后参考了一些代码,自己模仿,学写了一个。&nbs
- 实际使用Pool 是用于存放临时对象的集合,这些对象是为了后续的使用,以达到复用对象的效果。其目的是缓解频繁创建对象造成的gc压力。在许多开
- 1 数据概览学生课程成绩:studentID、name、english、chinese、math,存在一定缺失值2 任务定义基于学生课程成绩
- 本文实例讲述了python实现的系统实用log类。分享给大家供大家参考。具体如下:每个系统都必不可少会需要一个log类,方便了解系统的运行状
- 本文探讨了提高MySQL数据库性能的思路,并从8个方面给出了具体的解决方法。1、选取最适用的字段属性MySQL可以很好的支持大数据量的存取,
- Models内容from django.db import modelsfrom django import forms# Create y
- 代码如下:Create PROCEDURE Batch_Delete @TableName nvarchar(100), --表
- 本文实例讲述了python查看FTP是否能连接成功的方法。分享给大家供大家参考。具体如下:#!/usr/local/bin/python#-
- 记得有一期ucdchina书友会里面,聊过一次大家的工作习惯问题,现在回想起来很有意思,特整理这篇文章分享给大家。关于photoshop1
- easy_install 和 pip的介绍:easy_install和pip都是用来下载安装Python一个公共资源库PyPI 的相关资源包
- 首先让我祭出一张数学王子高斯的照片,这位印在德国马克上的神人有多牛呢? 他是近代数学的奠基人之一,与牛顿, 阿基米德并称顶级三大数学家,随便
- 一、设置SQLServer身份验证1、按下windows+R,弹出运行框。2、在弹出框中输入cmd,按下enter键。3、在dos命令窗口输
- 前言:流程控制是每种编程语言控制逻辑走向和执行次序的重要部分,流程控制可以说是一门语言的“经脉”。Go语言中最常用的流程控制有if和for,
- 在上一篇Python接口自动化测试系列文章:Python接口自动化浅析requests请求封装原理,主要通过源码分析,总结出一套简洁的请求类
- Python过滤txt文件内重复内容,并将过滤后的内容保存到新的txt中示例如下 原文件处理之后的文件 直接上代码# -*-coding:u