博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 深浅拷贝和赋值
阅读量:3972 次
发布时间:2019-05-24

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

文章目录

is 和 ==

(is和==)都用来判断变量:

is判断两个变量的内存地址

==判断两个变量的值
在这里插入图片描述
在这里插入图片描述
1.python提供小整型缓存区(-5~256)在数据区
在这里插入图片描述
2.字符串缓存区(字符串不能包含特殊字符)
在这里插入图片描述
超过数据区就会变得不一样

深拷贝和浅拷贝

引用赋值 -----------数据存在栈里面的复制 =

浅拷贝
拷贝的对象,对象存在堆里

import copy

dir(copy)

[‘Error’, ‘all’, ‘builtins’, ‘cached’, ‘doc’, ‘file’, ‘loader’, ‘name’, ‘package’, ‘spec’, ‘copy_dispatch’,‘copy_immutable’, ‘deepcopy_atomic’, ‘deepcopy_dict’, ‘deepcopy_dispatch’, ‘deepcopy_list’,‘deepcopy_method’, ‘deepcopy_tuple’, ‘keep_alive’, ‘reconstruct’, ‘copy’, ‘deepcopy’, ‘dispatch_table’,‘error’]

copy-------浅拷贝(只拷贝一层,内层发生改变,拷贝的对象也会发声改变)

deepcopy-------深拷贝

总结:当对象需要拷贝的时候,一般建议使用浅拷贝(只拷贝一层),如果要完全分离,使用深拷

拷贝可以用在不可变类型(元组,字符串)

元组是不可变类型,元组里面的元素可变,如果再去拷贝?(思考)

转载地址:http://oatki.baihongyu.com/

你可能感兴趣的文章
linux设备模型之uart驱动架构分析
查看>>
source insight使用
查看>>
git基本使用
查看>>
七、WordPress配置HTTPS与开启CDN加速
查看>>
CentOS 6.7下MySQL 5.6 yum快速安装及参数详解
查看>>
CentOS6.8二进制安装MySQL5.6
查看>>
centos 6x系统下源码安装mysql操作记录
查看>>
Centos搭建Mysql主从复制
查看>>
centos下部署redis服务环境及其配置说明
查看>>
Centos7下部署两套python版本并存环境的操作记录
查看>>
利用阿里云的源yum方式安装Mongodb
查看>>
Mysql的二进制日志binlog的模式说明
查看>>
zabbix监控交换机、防火墙等网络设备
查看>>
Redis数据"丢失"讨论及规避和解决的几点总结
查看>>
Redis日常操作命令小结
查看>>
线程安全的单例模式
查看>>
fastjson深度源码解析- 序列化(五) - json内部注册序列化解析
查看>>
fastjson深度源码解析- 序列化(六) - json特定序列化实现解析
查看>>
fastjson深度源码解析- 词法和语法解析(二) - 基础类型实现解析
查看>>
fastjson深度源码解析- 词法和语法解析(三) - 针对对象实现解析
查看>>