博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python创建对象数组避免浅拷贝
阅读量:4973 次
发布时间:2019-06-12

本文共 353 字,大约阅读时间需要 1 分钟。

写了一段代码,发现浅拷贝了:

UAVs=[UAV()]*UAVnumUAVs=np.array(UAVs)Targets=[Target()]*TargetnumTargets=np.array(Targets)

即更新数组里的一个值,其他值都跟随改变。

不能这么定义对象数组,python默认的赋值方式是浅拷贝,即赋值的是对象的引用。可以改为下面的方式:

UAVs=[]for i in range(UAVnum):    UAVs.append(UAV())Targets=[]for i in range(Targetnum):    Targets.append(Target())

转载于:https://www.cnblogs.com/gaosheng12138/p/10808538.html

你可能感兴趣的文章
SpringBoot在idea中的热部署配置
查看>>
MyEclipse连接SQL Server 2008数据库的操作方法
查看>>
JS验证图片格式和大小并预览
查看>>
laravel5.2 移植到新服务器上除了“/”路由 ,其它路由对应的页面显示报404错误(Object not found!)———新装的LAMP没有加载Rewrite模块...
查看>>
编写高质量代码--改善python程序的建议(六)
查看>>
windows xp 中的administrator帐户不在用户登录内怎么解决?
查看>>
接口和抽象类有什么区别
查看>>
Codeforces Round #206 (Div. 2)
查看>>
**p
查看>>
优先队列详解
查看>>
VS2012 创建项目失败,,提示为找到约束。。。。
查看>>
设计类图
查看>>
类对象
查看>>
[Voice communications] 声音的滤波
查看>>
SQL语言之概述(一)
查看>>
软件建模——第9章 毕业论文管理系统—面向对象方法
查看>>
[SDOI2008]洞穴勘测
查看>>
Difference between Linearizability and Serializability
查看>>
IDEA使用操作文档
查看>>
UIView
查看>>