python字符串相减

python字符串相减我们都知道在 Python 中 两个字符串相加会自动拼接字符串 但遗憾的是两个字符串相减却抛出异常 现在定义一个 Nstr 类 支持字符串的相减操作 A B 即从 A 中去除所有 B 的子字符串 请编写相应的程序 思路在 Nstr 类内重写 减号 返回值为用 replace 函数把要减去的子字符串替换为空字符串后的结果关于 replace 方法 str replace old new max old 将被替换的子字符串 new 新字符串 用于替换 old 子字符串 max 可选字符串 替换

我们都知道在Python中,两个字符串相加会自动拼接字符串,但遗憾的是两个字符串相减却抛出异常。现在定义一个Nstr类,支持字符串的相减操作:A-B,即从A中去除所有B的子字符串。请编写相应的程序。

思路

在Nstr类内重写“-”减号,返回值为用replace()函数把要减去的子字符串替换为空字符串后的结果

关于replace()方法
str.replace(old, new[, max])
old – 将被替换的子字符串。
new – 新字符串,用于替换old子字符串。
max – 可选字符串, 替换不超过 max 次
返回值
返回字符串中的 old(旧字符串) 替换成 new(新字符串)后生成的新字符串,如果指定第三个参数max,则替换不超过 max 次。












实现代码

class Nstr: def __init__(self, arg): self.x=arg def __sub__(self,other): c=self.x.replace(other.x,"") return c m=Nstr("asdffasdf") n=Nstr("asd") print(m-n) 

运行结果

fff 
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/218374.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 上午7:25
下一篇 2026年3月18日 上午7:25


相关推荐

  • 详细后端开发知识讲解

    详细后端开发知识讲解一 前言本片文章面向后端开发 讲述后端在进行开发时所使用的 WEB 服务器的工作流程 正所谓知根知底 WEB 服务器是后端开发人员日常用于调试 WEB 程序和与前端通讯的一种方式 WEB 服务器最为强大的地方是能够执行 WEB 程序 其 WEB 程序的编程语言并没有明确的规定 因为只要你所使用的服务器支持这样的程序就可以了 WEB 服务器更像是一个平台 在此平台上编写软件我们称其为 WEB 编程 注 WEB 编程下有许多规

    2026年3月18日
    2
  • 标签的含义_新建标签页的网址

    标签的含义_新建标签页的网址功能说明版权信息适用范围首页模板,列表模板,内容模板基本语法[NT:unLoop,NT:SiteID=0,NT:LabelType=CopyRight][/NT:unLoop]必填参数NT:SiteID表示站群ID,0表示总站NT:LabelType标签类型:值为CopyRight,表示版权信息后台设置:控制面板—系统…

    2026年4月19日
    4
  • 希沃白板制作刮一刮

    希沃白板制作刮一刮1 去百度搜索希沃白板 5 下载后进行安装 2 安装完成后打开该软件点击新建课件选择一个模板 双击比如选择第三个点击形状选择一个长方形 然后拖入主面板可以选中该长方形 右键点击复制 多复制几个可以点击右边的填充 长方形换个颜色接下来再拖一个小一点的长方形双击这个小的长方形 然后输入 刮一刮 接下来把

    2026年3月16日
    2
  • SQL的主键和外键约束

    SQL的主键和外键约束SQL 的主键和外键的作用 nbsp nbsp 外键取值规则 空值或参照的主键值 1 插入非空值时 如果主键表中没有这个值 则不能插入 2 更新时 不能改为主键表中没有的值 3 删除主键表记录时 你可以在建外键时选定外键记录一起级联删除还是拒绝删除 4 更新主键记录时 同样有级联更新和拒绝执行的选择 简而言之 SQL 的主键和外键就是起约束作用 nbsp nbsp 定义主键和外键主要

    2026年3月26日
    2
  • java 基础高级面试题及答案_20个高级Java开发面试题及答案,干货!!!

    java 基础高级面试题及答案_20个高级Java开发面试题及答案,干货!!!这是一个高级Java面试系列题中的第一部分。这一部分论述了可变参数,断言,垃圾回收,初始化器,令牌化,日期,日历等等Java核心问题。1.什么是可变参数?可变参数允许调用参数数量不同的方法。请看下面例子中的求和方法。此方法可以调用1个int参数,或2个int参数,或多个int参数。//int(type)followed…(threedot’s)issyntaxofavari…

    2022年5月22日
    38
  • python+opencv的图像学基础以及简单的人脸识别

    python+opencv的图像学基础以及简单的人脸识别

    2021年10月6日
    45

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号