交流群:462197261站长百科站长论坛热门标签收藏本站北冥有鱼 互联网前沿资源第一站 助力全行业互联网+
点击这里给我发消息
  • 当前位置:
  • Python字符串中删除特定字符的方法

    分析

    在Python中,字符串是不可变的。所以无法直接删除字符串之间的特定字符。
    所以想对字符串中字符进行操作的时候,需要将字符串转变为列表,列表是可变的,这样就可以实现对字符串中特定字符的操作。

    1、删除特定字符

    特定字符的删除,思路跟插入字符类似。

    可以分为两类,删除特定位置的字符 或者 删除指定字符

    1.1、删除特定位置的字符

    使用.pop()方法。输入参数,即为要删除的索引。

    string = '公众号:土堆碎念'
    list_str = list(string)
    list_str.pop(1)
    list_str = ''.join(list_str)
    print(list_str)

    输出:

    1.2、删除指定字符

    删除指定字符与删除特定位置的区别是:删除指定字符,需要提供指定的字符,和需要删除的最大数目。而删除特定位置的字符,只需要提供删除字符的索引即可。

    1.3、两种实现

    删除的实现,除了像pop方法那种,弹出特定字符的删除,也可以用空字符来替换特定的字符,来实现删除。

    .replace()方法

    replace(...) method of builtins.str instance
    S.replace(old, new[, count]) -> str

    比如,字符串a='公众号公众号:土堆碎念',尝试将其中的字符删除,将字符替换成空字符。

    注意,它返回的是替换后(在这种情况下,是删除字符)的字符,没有改变原始字符串,也就是说,a还是原来那个a。所以如果想使用替换后的字符,需要指定一个变量进行赋值。

    眼尖的你,发现还有一个可选参数,count

    count参数就可以指定要替换几个。我们无意中知道了如何删除指定数目的字符。

    正则表达式

    除了使用Python标准库中的方法,还可以使用re正则表达式库,来实现。

    使用re.sub()方法,这个方法的功能更强大,可以替换特定模式的字符。

    因为模式匹配比较麻烦,所以比较强大。

    sub(pattern, repl, string, count=0, flags=0)

    pattern代表指定的模式,这是强大的原因,如果简单点使用,只指定特定字符,就可以用'特定字符'来表示模式。

    repl代表的是,需要替换成的字符,如果删除,就是替换成空字符。

    string代表的是,需要被替换的字符串。

    count是替换的次数。

    总结

    无论是Python字符串自带的.replace()方法,还是re提供的.sub()方法,都是不改变原来的字符串,返回值才是替换的字符串。所以,如果要使用替换的字符串,就需要将返回值赋值给一个变量。

    这两种方法,默认都是替换所有的指定字符。

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持北冥有鱼。


    广而告之:
    热门推荐:
    浅谈JS原生Ajax,GET和POST

    javascript/js的ajax的GET请求: <script type="text/javascript"> /* 创建 XMLHttpRequest 对象 */ var xmlHttp; function GetXmlHttpObject(){   if (window.XMLHttpRequest){     // code for IE7+, Firefox, Chrome, Opera, Safari     xmlhttp=new···

    PHP使用redis消息队列发布微博的方法示例

    本文实例讲述了PHP使用redis消息队列发布微博的方法。分享给大家供大家参考,具体如下: 在一些用户发布内容应用中,可能出现1秒上万个用户同时发布消息的情况,此时使用mysql可能会出现" too many connections"错误,当然把Mysql的max_connections参数设置为更大数,不过这是···

    Laravel接收前端ajax传来的数据的实例代码

    最近有时间把公司的项目整理一下,并把遇到的问题解决了。那么今天也算个学习笔记吧! 最近在做一个笔记的项目,技术栈如下:vue.js + laravel + mongodb 首先不得不感叹vue的神奇,项目昨晚之后我会对整个项目中用到的技术和踩过的坑进行一个总结,今天先记录一个前端传送数···

    JavaScript自定义函数实现查找两个字符串最长公共子串的方法

    本文实例讲述了JavaScript自定义函数实现查找两个字符串最长公共子串的方法。分享给大家供大家参考,具体如下: //查找两个字符串的最长公共子串 function findSubStr(s1,s2){ var S=sstr= "" ,L1=s1.length,L2=s2.length; if (L1>L2){ var s3=s1;s1=s2,s2=s3,L1=s2.le···

    asp.net微信开发(高级群发图文)

    上一篇介绍了如何群发文本消息,本篇将介绍如何群发图文信息,上传图文信息所需的素材,界面如下: 我们先看从素材库中获取图文素材的代码,界面: 素材列表,我是使用的repeater控件, 前台代码如下: <!--弹出选择素材窗口--> <div id="shownewgroup"> ···

    html中select语句读取mysql表中内容

    <?  $record=0;  $db=@mysql_pconnect('localhost','root');  @mysql_select_db('1234',$db);  $strsql="select * from 1234_data";  $result=@mysql_query($strsql);  $data=@mysql_fetch_ar···

    Ubuntu下mysql安装和操作图文教程

    ubuntu上安装mysql非常简单只需要几条命令就可以完成。 1. sudo apt-get install mysql-server 2. apt-get isntall mysql-client 3.  sudo apt-get install libmysqlclient-dev 安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检···

    jQuery中JSONP的两种实现方式详解

    前台代码如下: 后台Action代码如下: 运行后就可以看到结果了。我追踪了下后台ProcessCallback代码,如下图: 可以看到jsonCallback的值为"jQuery17104721....",它是前端传给远程服务器后台Action的。这里 jQuery171..表示的是jQuery的版本,可以简单地将这个理解为JSONP···

    JavaScript中的acos()方法使用详解

     此方法返回的弧度的反余弦值。ACOS方法返回0和PI对于x-1和1之间弧度的数值。如果数的值超出这个范围,则返回NaN。 语法 Math.acos( x ) ; 下面是参数的详细信息:     x : 一个数字 返回值: 返回了一些弧度的反余弦值。 例子: <html> <···

    浅谈 Mousewheel 事件

    其实在大多数浏览器(IE6, IE7, IE8, Opera 10+, Safari 5+)中,都提供了 “mousewheel” 事件。但杯具的是 Firefox 3.5+ 却不支持此事件,不过庆幸 Firefox 3.5+ 中提供了另外一个等同的事件:”DOMMouseScroll” (事件和事件属性的测试案例)。 Mousewheel Event in Ja···