字符串修改、搜索和替换方法_Python教程

内容摘要
使用字符串的过程中或多或少我们要将字符串中的内容进行修改,虽然字符串是不可改变的,但是我们可以使用方法来返回修改后的副本.
文章正文

        使用字符串的过程中或多或少我们要将字符串中的内容进行修改,虽然字符串是不可改变的,但是我们可以使用方法来返回修改后的副本。

        下面我们将介绍几种常用的字符串修改方法,分别是lower()、upper()、lstrip()、rstrip ()、strip()。

    1. lower()方法和upper()方法

这两种方法和上一节的测试方法类似,前者是返回一个副本,副本中把字符串中所有字符转换为了小写字符,而后者是返回一个副本,副本中把字符串中所有字符转换为了大写字符。

看下面的例子:

>>> my_str = 'ABCabc'#包含大小写字母的字符串
>>> my_str.upper()#将字符串全部大写
'ABCABC'
>>> my_str.lower()#将字符串全部小写
'abcabc'
>>> my_str#再看一下原始字符串有没有改变
'ABCabc'

        一定要注意的就是返回的是副本,使用了方法,但是原始字符串是没有改变的,如果我们要获取副本,可以另取名,也可以直接覆盖。

>>> my_str = my_str.upper()#直接覆盖
my_str
>>> my_str
'ABCABC'

2. lstrip()方法、rstrip ()方法和strip()方法

        这三种方法的原理类型,他们都是用于处理字符串中的空白字符。

        1) lstrip()方法会返回一个副本,副本中的字符串删除所有前导的空白字符。

        2) rstrip()方法会返回一个副本,副本中的字符串删除所有后导的空白字符

        3) strip()方法会返回一个副本,副本中的字符串删除所有前导和后导的空白字符。

        我们先定义一个字符串my_str = ‘  \n\twww.dotcpp.com\t\n  ‘,然后看下图:

python字符串1

        在图中前导为字符串字符串前面的空白字符,后导同理,前导对应的就是lstrip()方法,后导对应rstrip()方法,而strip()对应的是两种方法的结合。

        我们来看一下代码:

>>> my_str = ' \n\t www.dotcpp.com \t\n  '
>>> my_str.rstrip()#返回删除后导空白字符的副本
' \n\t  
>>> my_str.lstrip()#返回删除前导空白字符的副本
'www.dotcpp.com \t\n  '
>>> my_str.strip()#返回删除前导后导空白字符的副本
'www.dotcpp.com'

        综合代码和上图来理解一下这个例子,通俗的讲,前导返回的副本删除了前面部分,后导返回的副本删除了后面部分,而strip()方法返回的副本把前导后导一并删除。

3. 搜索方法

        我们在写程序的时候有时候需要搜索字符串中的元素,除了前面讲过的find()方法和index()方法,我们有时候还需要用到endswith()方法和startswith()方法。

        1) endswith()方法

        它的语法格式为:

my_str.endswith(substring)

        my_str为字符串名,substring参数是一个字符串,如果在该字符串的结尾为substing,那么返回True,反之返回False。

        2) startswith()方法

        它的语法格式为:

my_str.startswith(substring)

        my_str为字符串名,substring参数是一个字符串,如果在该字符串的开头为substing,那么返回True,反之返回False。

        举个例子:

>>> my_str = 'www.dotcpp.com' 
>>> my_str.endswith('.com')
True
>>> my_str.startswith('www.')
True

4. 替代方法——replace()

        replace()方法返回一个副本,副本中将我们需要替代的字符替换掉,它的语法格式为:

        my_str.replace(old,new)

        my_str为字符串名,old为要替换掉的字符,new为替换上的字符。

        举个例子:

>>> my_str = 'www.dotcpp.com'
>>> my_str.replace('w','m')
'mmm.dotcpp.com'

        这种方法替换的时候仍然是返回的副本,它会替换掉所有需要替换的字符,保持原字符串是不改变的。

代码注释
[!--zhushi--]

作者:喵哥笔记

IDC笔记

学的不仅是技术,更是梦想!