热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Python全栈day19(函数补充)

一,深浅拷贝看拷贝列子day19-1.py假如修改的元素是一个列表,源列表也会发生变化day19-2.py为什么会这样,因为第一次修改的是一个不可变元素对应的指针发生了变化,第二次

一,深浅拷贝

  看拷贝列子day19-1.py

s=[1,‘zhangsan‘,‘lisi‘]
#s2是s的拷贝
s2=s.copy()
#打印s2和s是一样的
print(s2)
#修改s2
s2[0]=2
#打印s是未变的
print(s)
#打印s2因为修改了所以有变化
print(s2)

[1, ‘zhangsan‘, ‘lisi‘]
[1, ‘zhangsan‘, ‘lisi‘]
[2, ‘zhangsan‘, ‘lisi‘]

  假如修改的元素是一个列表,源列表也会发生变化day19-2.py

s = [[1,2],‘zhangsan‘,‘lisi‘]
s3=s.copy()
print(s3)
print(s)
s3[0][1]=3
#修改s3里面列表元素以后源列表也对应改变了
print(s3)
print(s)

[[1, 2], ‘zhangsan‘, ‘lisi‘]
[[1, 2], ‘zhangsan‘, ‘lisi‘]
[[1, 3], ‘zhangsan‘, ‘lisi‘]
[[1, 3], ‘zhangsan‘, ‘lisi‘]

  为什么会这样,因为第一次修改的是一个不可变元素对应的指针发生了变化,第二次s和s3指向的内存地址是一个可变的元素(列表)当列表发生改变,但是列表的内存地址没有改变s和s3的指向没有发生改变,所以修改s3的第一个元素列表对应的s的第一个元素列表也发生了改变。

  这就是浅拷贝,浅拷贝只拷贝第一层

Python全栈day19(函数补充)


推荐阅读
  • 本文介绍了在Windows环境下使用pydoc工具的方法,并详细解释了如何通过命令行和浏览器查看Python内置函数的文档。此外,还提供了关于raw_input和open函数的具体用法和功能说明。 ... [详细]
  • 本文介绍如何使用Python进行文本处理,包括分词和生成词云图。通过整合多个文本文件、去除停用词并生成词云图,展示文本数据的可视化分析方法。 ... [详细]
  • 使用GDI的一些AIP函数我们可以轻易的绘制出简 ... [详细]
  • 本文介绍如何使用 NSTimer 实现倒计时功能,详细讲解了初始化方法、参数配置以及具体实现步骤。通过示例代码展示如何创建和管理定时器,确保在指定时间间隔内执行特定任务。 ... [详细]
  • 本文介绍如何使用阿里云的fastjson库解析包含时间戳、IP地址和参数等信息的JSON格式文本,并进行数据处理和保存。 ... [详细]
  • 以下实例展示了locals( ... [详细]
  • andr ... [详细]
  • VPX611是北京青翼科技推出的一款采用6U VPX架构的高性能数据存储板。该板卡搭载两片Xilinx Kintex-7系列FPGA作为主控单元,内置RAID控制器,支持多达8个mSATA盘,最大存储容量可达8TB,持续写入带宽高达3.2GB/s。 ... [详细]
  • 并发编程:深入理解设计原理与优化
    本文探讨了并发编程中的关键设计原则,特别是Java内存模型(JMM)的happens-before规则及其对多线程编程的影响。文章详细介绍了DCL双重检查锁定模式的问题及解决方案,并总结了不同处理器和内存模型之间的关系,旨在为程序员提供更深入的理解和最佳实践。 ... [详细]
  • 解决JAX-WS动态客户端工厂弃用问题并迁移到XFire
    在处理Java项目中的JAR包冲突时,我们遇到了JaxWsDynamicClientFactory被弃用的问题,并成功将其迁移到org.codehaus.xfire.client。本文详细介绍了这一过程及解决方案。 ... [详细]
  • 本题探讨如何通过最大流算法解决农场排水系统的设计问题。题目要求计算从水源点到汇合点的最大水流速率,使用经典的EK(Edmonds-Karp)和Dinic算法进行求解。 ... [详细]
  • 本文介绍如何在应用程序中使用文本输入框创建密码输入框,并通过设置掩码来隐藏用户输入的内容。我们将详细解释代码实现,并提供专业的补充说明。 ... [详细]
  • 本文介绍如何通过SQL查询从JDE(JD Edwards)系统中提取所有字典数据,涵盖关键表的关联和字段选择。具体包括F0004和F0005系列表的数据提取方法。 ... [详细]
  • 本文详细介绍了如何通过命令行启动MySQL服务,包括打开命令提示符窗口、进入MySQL的bin目录、输入正确的连接命令以及注意事项。文中还提供了更多相关命令的资源链接。 ... [详细]
  • 本文详细介绍了Git分布式版本控制系统中远程仓库的概念和操作方法。通过具体案例,帮助读者更好地理解和掌握如何高效管理代码库。 ... [详细]
author-avatar
王怡君3018
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有