Python:类型转换和深浅拷贝,可变与不可变对象
int():转换为一个整数,只能转换由纯数字组成的字符串
浮点型强转整型会去掉小数点及后面的数,只保留整数部分
#如果字符串中有数字和正负号以外的字符就会报错
float():整形转换为浮点型会自动添加一位小数 .0
如果字符串中有正负号,数字和小数点以外的字符则不支持转换
str():转换为字符串类型,任何类型都可以转换成字符串类型
float转换成str会取出末尾为零的小数部分
eval():执行一个字符串表达式,并返回表达式的值
eval可以实现list,dict,tuple和str之间的转换,虽然功能强大但是不够安全,容易被恶意修改数据不建议使用
list():将可迭代对象转换为列表
支持转换为list的类型:str,tuple,dict,set#其中字典转换成列表只会取键名作为列表的值
拷贝:

赋值:完全共享资源,一个值的改变会完全被另一个值共享
li=[1,2,3,4] li2=li print(li) print(li2) li.append(5) print(li) print(li2)
输出结果为
[1, 2, 3, 4]
[1, 2, 3, 4]
[1, 2, 3, 4, 5]
[1, 2, 3, 4, 5]
浅拷贝:会创建新的对象,拷贝第一层的数据,嵌套层会指向原来的内存地址(数据半共享)
import copyli=[1,2,3,4,[5,6]] li2=copy.copy(li) print(li) print(li2)
运行结果为:
[1, 2, 3, 4, [5, 6]]
[1, 2, 3, 4, [5, 6]],结果相同,但是id内存地址不同,说明不是同一个对象
import copyli=[1,2,3,4,[5,6]] li2=copy.copy(li) print(li) print(li2) li.append(7) print(li) print(li2)输出结果为:
[1, 2, 3, 4, [5, 6]]
[1, 2, 3, 4, [5, 6]]
[1, 2, 3, 4, [5, 6], 7]
[1, 2, 3, 4, [5, 6]],可见添加数据后,数据没有完全copy
*如果在其嵌套列表中添加数据,可以copy过去,而且内存地址相同
优点:拷贝速度快,占用空间少
深拷贝(数据不共享):外层的对象和内部的元素都拷贝了一遍
import copyli=[1,2,3,4,[5,6]] li2=copy.deepcopy(li) print(li) print(li2) li.append(7) print(li) print(li2) #嵌套列表值添加 li[4].append(8) print(li) print(li2)
输出结果为:
[1, 2, 3, 4, [5, 6]]
[1, 2, 3, 4, [5, 6], 7]
[1, 2, 3, 4, [5, 6]]
[1, 2, 3, 4, [5, 6, 8], 7]
[1, 2, 3, 4, [5, 6]]#深拷贝中在嵌套列表li添加值不会影响深拷贝后的列表li2,且内存地址不一样
可变对象:

*元组为不可变类型,可变类型为变量对应的值可以修改(增删改查),但是内存地址不会发生改变
不可变对象:

变量对应的值不可以被修改,如果修改就会生成一个新的值从而分配新的内存空间
n=10
print("原地址:",id(n))
n=15
print("现地址:",id(n))
输出结果为:
原地址: 140713881896136
现地址: 140713881896296#内存地址发生变化,修改n的值就会生成新的内存地址
**前面说的深浅拷贝只针对可变对象,不可变对象没有这个说法
相关文章:
Python:类型转换和深浅拷贝,可变与不可变对象
int():转换为一个整数,只能转换由纯数字组成的字符串 浮点型强转整型会去掉小数点及后面的数,只保留整数部分 #如果字符串中有数字和正负号以外的字符就会报错 float():整形转换为浮点型会自动添加一位小数 .0 如果字符串中有…...
Redis——缓存穿透、击穿、雪崩
缓存穿透 什么是缓存穿透 缓存穿透说简单点就是大量请求的 key 根本不存在于缓存中,导致请求直接到了数据库上,根本没有经过缓存这一层。举个例子:某个黑客故意制造我们缓存中不存在的 key 发起大量请求,导致大量请求落到数据库…...
8.1.STM32_OLED
4.STM32_OLED 跟着江协科大的视频,无法点亮OLED屏幕解决办法 每个人使用的0.96寸OLED屏幕信号不一样,存在很多兼容性问题 归根结底就是驱动的问题! 本人的OLED是SSD1306,在淘宝店铺找了驱动文件后成功点亮,示例见文末 请针对自…...
Gartner发布安全运营指标构建指南
如何为安全运营指标构建坚实的基础 安全运营经理需要报告威胁检测、调查和响应计划的有效性,但难以驾驭大量潜在的 SOC 指标。本研究提供了设计针对 SOC 的指标系统的示例和实践。 主要发现 需要清晰、一致的衡量标准来向董事会成员或服务提供商等更广泛的团队传达…...
【赵渝强老师】监控Redis
对运行状态的Redis实例进行监控是运维管理中非常重要的内容,包括:监控Redis的内存、监控Redis的吞吐量、监控Redis的运行时信息和监控Redis的延时。通过Redis提供的监控命令便能非常方便地实现对各项指标的监控。 一、监控Redis的内存 视频讲解如下 【…...
【Unity】搭建HTTP服务器并解决IP无法访问问题解决
一、核心目标与背景 在Unity中搭建本地HTTP服务器,可以用于实现Web与游戏交互、本地数据接口测试、跨设备通信等场景。但在实际部署中,开发者常遇到以下问题: 本机IP无法访问:服务绑定localhost时,局域网设备无法连…...
如何远程访问svn中的URL
简介: 主要opencascade相关知识学习 格言: 万丈高楼平地起 要远程访问 SVN(Subversion)仓库中的 URL,通常需要以下步骤和注意事项: 1. 确认远程 SVN 服务器的访问协议 SVN 支持多种协议访问远程仓库&…...
Free Auto Clicker - 在任意位置自动重复鼠标点击
“想让鼠标自己动起来,解放双手去做更有趣的事?”Free Auto Clicker 就像你的数字小助手,能在任意位置自动重复点击鼠标。从玩游戏到刷网页,这款免费工具让你告别枯燥的重复操作,效率瞬间起飞! 你有没有想…...
0005__PyTorch 教程
PyTorch 教程 | 菜鸟教程 离线包:torch-1.13.1cpu-cp39-cp39-win_amd64.whl https://download.pytorch.org/whl/torch_stable.html...
Unity Burst编译
官网文档:https://docs.unity3d.com/Packages/com.unity.burst1.8/manual/index.html Unity 之Burst 底层原理:https://zhuanlan.zhihu.com/p/623274986 Burst 编译器入门(五):https://developer.unity.cn/projects/5e…...
软件测试中的BUG
文章目录 软件测试的生命周期BugBug 的概念描述 Bug 的要素案例Bug 级别Bug 的生命周期与开发产生争执怎么办?【高频面试题】先检查自身,Bug 是否描述的不清楚站在用户角度考虑并抛出问题Bug 的定级要有理有据提⾼自身技术和业务水平,做到不仅…...
LabVIEW基于IMAQ实现直线边缘检测
本程序基于 NI Vision Development 模块,通过 IMAQ Find Straight Edges 函数,在指定 ROI(感兴趣区域) 内检测多条直线边缘。用户可 动态调整检测参数 或 自定义ROI,实时观察识别效果,适用于 高精度视觉检测…...
C#:LINQ学习笔记01:LINQ基础概念
一、LINQ 架构体系 1. LINQ 的核心思想 统一查询模型:对对象、XML、数据库等不同数据源使用一致的语法。强类型检查:编译时类型安全,减少运行时错误。 2. 核心组件 技术数据源典型场景LINQ to Objects内存集合 (IEnumerable)过滤/排序集合…...
15Metasploit框架介绍
metasploit目录结构 MSF ——the metasploit framework 的简称。MSF高度模块化,即框架结构由多个module组成,是全球最受欢迎的工具 是一筐开源安全漏洞利用和测试工具,集成了各种平台上常见的溢出漏洞和流行sheellcode,并且保持…...
NLP如何训练AI模型以理解知识
一、自然语言处理(NLP)的定义与核心目标 1. 什么是自然语言处理? NLP是计算机科学与人工智能的交叉领域,旨在让机器具备以下能力: • 理解:解析人类语言(文本或语音)的语法、语义和…...
【树莓派学习】树莓派3B+的安装和环境配置
【树莓派学习】树莓派3B的安装和环境配置 文章目录 【树莓派学习】树莓派3B的安装和环境配置一、搭建Raspberry Pi树莓派运行环境1、下载树莓派镜像下载器2、配置wifi及ssh3、SSH访问树莓派1)命令行登录2)远程桌面登录3)VNC登录(推…...
python连接neo4j的方式汇总
python连接neo4j的方式汇总 1.官方驱动(neo4j)特点代码示例 2. 全功能ORM(py2neo)特点代码示例 3. 领域驱动设计框架(neomodel-odm)特点代码示例 4. 异步高性能驱动(asyncneo4j)特点…...
Graph RAG 迎来记忆革命:“海马体”机制让问答更精准!
随着生成式 AI 技术的快速发展,RAG(Retrieval-Augmented Generation)和 Agent 成为企业应用大模型的最直接途径。然而,传统的 RAG 系统在准确性和动态学习能力上存在明显不足,尤其是在处理复杂上下文和关联性任务时表现不佳。近期,一篇论文提出了 HippoRAG 2,这一新型 R…...
Spring(三)容器-注入
一 自动注入Autowire 代码实现: package org.example.spring01.service;import org.springframework.stereotype.Service;Service public class UserService {}package org.example.spring01.controller;import lombok.Data; import lombok.ToString; import org.…...
剧本杀门店预约小程序:市场发展下的刚需
在剧本杀爆发式增长下,门店数字化运营的模式正在市场中逐渐展开,线下门店的竞争方向已发生了全新转变! 目前,数字化发展已经成为了消费市场的刚需,利用网络的便捷性提高服务,优化运营,提高自身…...
研究助理/项目经理/内容编辑:Hermes Agent 3 类人格模板的 SOUL.md 配置要点
1. 三类人格不是“角色扮演”,而是上下文锚点的工程化切片 大多数人第一次看到 Hermes Agent 的 SOUL.md 配置时,会下意识把它当成一个“AI人设说明书”:研究助理要严谨、项目经理要干练、内容编辑要文雅。这种理解在小规模单次交互中勉强能用,但一旦进入真实研发流程——…...
从1秒到60ms:手把手教你用STM32硬件SPI驱动GC9A01 LCD,性能飙升实战
从1秒到60ms:STM32硬件SPI驱动GC9A01 LCD的性能优化实战 当你在嵌入式项目中遇到屏幕刷新缓慢的问题时,那种卡顿感简直让人抓狂。想象一下,你刚拿到一块1.28寸的GC9A01 LCD屏幕,满心欢喜地准备展示你的项目成果,却发现…...
Perplexity实时新闻查询失效真相:Webhook劫持、缓存穿透与CDN时钟漂移三重陷阱
更多请点击: https://codechina.net 第一章:Perplexity实时新闻查询失效真相:Webhook劫持、缓存穿透与CDN时钟漂移三重陷阱 Perplexity 的实时新闻查询功能近期频繁返回陈旧或空结果,表面看是 API 延迟,实则深陷 Webh…...
从标签页混乱到高效工作流:Tabee如何彻底改变我的浏览器体验
从标签页混乱到高效工作流:Tabee如何彻底改变我的浏览器体验 【免费下载链接】chrome-tab-modifier Take control of your tabs 项目地址: https://gitcode.com/gh_mirrors/ch/chrome-tab-modifier 你是否曾经在几十个标签页中迷失方向?每个标签页…...
STC15单片机定时器T0配置详解:从1T/12T模式选择到1秒精准定时(附完整代码)
STC15单片机定时器T0配置实战:1秒精准定制的全流程解析 从理论到实践的定时器T0深度探索 在嵌入式系统开发中,定时器功能如同系统的心跳,为各类任务提供精准的时间基准。STC15系列单片机凭借其高性能和丰富的外设资源,成为许多开…...
Vue项目部署后Nginx报500?手把手教你排查并修复‘rewrite or internal redirection cycle‘循环重定向
Vue项目部署后Nginx报500?手把手教你排查并修复rewrite or internal redirection cycle循环重定向 部署Vue项目时遇到Nginx报500错误,日志显示"rewrite or internal redirection cycle",这可能是许多前端开发者都会遇到的典型问题。…...
2026届必备的六大AI辅助论文方案实际效果
Ai论文网站排名(开题报告、文献综述、降aigc率、降重综合对比) TOP1. 千笔AI TOP2. aipasspaper TOP3. 清北论文 TOP4. 豆包 TOP5. kimi TOP6. deepseek 处在信息爆炸的当下之时段,内容创作成为了个人以及企业的核心竞争力所在。针对广…...
别再硬着头皮写测试了!用Mockito 4.x搞定Spring Boot单元测试的5个真实场景
告别低效测试:Mockito 4.x在Spring Boot中的5个实战技巧 在Java开发领域,单元测试是保证代码质量的重要环节,但面对Spring Boot这样功能强大的框架,测试工作常常变得复杂而低效。依赖注入、数据库交互、外部服务调用等因素让测试代…...
❌别再硬拆QA了!谷歌SEO最大的坑你还在踩
2026年5月7日,谷歌在官方开发者文档悄然更新了一则重磅公告:FAQ 富摘要(FAQ Rich Results)正式全面下线,即日起不再搜索结果中展示。这不是临时调整,而是持续三年收紧后的终极收尾 —— 从 2023 年仅对政府、医疗站开放,到 2026 年 3 月大幅缩减展示量,再到如今彻底关闭…...
别再只改项目属性了!彻底搞懂Visual Studio平台工具集(Platform Toolset)和MSB8020错误的根治方法
深入解析Visual Studio平台工具集:从MSB8020错误到构建系统精要 当你在Visual Studio中打开一个历史项目时,是否曾被突如其来的MSB8020错误打断工作流程?这个看似简单的"找不到生成工具"提示背后,隐藏着Visual Studio构…...
