python34_可变字符串

server/2024/10/10 18:47:44/

可变字符串

说明

在 Python 中,字符串属于不可变对象,不支持原地修改,如果需要修改其中的值,智能创建新的字符串对象。
但是,经常我们确实需要原地修改字符串,可以使用 io.StringIO对象或 array 模块
python">import io
import arraydef modify_string_inplace(s, new_content):"""在原地修改字符串的内容。参数:s: io.StringIO 或 array.array('u'),包含原始字符串的对象。new_content: str,新的字符串内容。返回值:None,直接在对象中修改内容。"""if isinstance(s, io.StringIO):s.seek(0)  # 移动到文件开头s.truncate()  # 清空原有内容s.write(new_content)  # 写入新内容elif isinstance(s, array.array):s[:] = array.array('u', new_content)def main():# 使用 io.StringIOoriginal_string = "Hello, Python!"s_io = io.StringIO(original_string)print(f"原始字符串 (使用 io.StringIO): {s_io.getvalue()}")new_content = "Hello, Java!"modify_string_inplace(s_io, new_content)print(f"修改后的字符串 (使用 io.StringIO): {s_io.getvalue()}")# 使用 array.arrayoriginal_string_array = array.array('u', original_string)print(f"原始字符串 (使用 array.array): {''.join(original_string_array)}")modify_string_inplace(original_string_array, new_content)print(f"修改后的字符串 (使用 array.array): {''.join(original_string_array)}")if __name__ == "__main__":main()

执行结果
在这里插入图片描述


http://www.ppmy.cn/server/129739.html

相关文章

深入解析MySQL事务管理:ACID特性与基本操作

💝💝💝欢迎莅临我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:「storm…

JAVA思维提升

利用java做一个双色球彩票系统 要求 package ZY; import java.util.Random; import java.util.Scanner; public class Test9双色球 { //目标:模拟双色球//规则投注号码由6个红色球号码和1个蓝色球号码组成。红色球号码从1-33中选择;蓝色球号码从1-16中选择。publi…

【React】事件机制

事件机制 react 基于浏览器的事件机制自身实现了一套事件机制,称为合成事件。比如:onclick -> onClick 获取原生事件:e.nativeEvent onClick 并不会将事件代理函数绑定到真实的 DOM节点上,而是将所有的事件绑定到结构的最外层…

【瑞昱RTL8763E】音频

1 音乐播放控制 1.1 播放列表更新 文件系统在sd卡中保存header.bin及name.bin两份文件用于歌曲名称的存储。为方便应用层进行歌曲显示及列表管理,可将这两个bin文件信息读取并保存到nor flash中。需要播放指定名称的歌曲时,将对于歌曲名称传递给文件系…

Go版数据结构 -【8.4 快速排序】

8.4 快速排序 快速排序是一种分而治之的排序算法。它通过随机选择一个基准元素,将数组分为两部分。 一部分比基准元素小,另一部分比基准元素大,之后对两部分排序。 快速排序以其平均情况下的 O(n log n) 时间复杂度和良好的性能而广泛应用…

小程序 uniapp+Android+hbuilderx体育场地预约管理系统的设计与实现

目录 项目介绍支持以下技术栈:具体实现截图HBuilderXuniappmysql数据库与主流编程语言java类核心代码部分展示登录的业务流程的顺序是:数据库设计性能分析操作可行性技术可行性系统安全性数据完整性软件测试详细视频演示源码获取方式 项目介绍 用户 注册…

linux 端口 进程

文章目录 1. 检查端口是否被监听1. 使用 netstat 命令2. 使用 ss 命令3. 使用 lsof 命令4. 使用 curl 命令5. 使用 telnet 命令6. 查看Python程序输出示例输出总结 2.查看端口被哪个进程占用1. 使用 lsof 命令2. 使用 netstat 命令3. 使用 ss 命令示例输出总结 3.查看进程在哪个…

自动驾驶系统研发系列—如何选择适合自动驾驶的激光雷达?从基础到高端全解读

🌟🌟 欢迎来到我的技术小筑,一个专为技术探索者打造的交流空间。在这里,我们不仅分享代码的智慧,还探讨技术的深度与广度。无论您是资深开发者还是技术新手,这里都有一片属于您的天空。让我们在知识的海洋中…