字符串转码的作用(字符串转换字符代码的函数是)

字符串转码的作用(字符串转换字符代码的函数是)div id navCategory div 在前面说的的字符串替换 是将字符串中的一个子串替换成了新的子串 如果我们想对字符串中的某些字符进行转换 也就是对字符串中的单个字符进行替换 可以调用方法 maketrans 和 translate 来实现 首先调用 maketrans 方法创建一个转换表 在转换表中声明要将那些字符转换成什么字符

大家好,我是讯享网,很高兴认识大家。



 <div id="navCategory"></div> 

讯享网

在前面说的的字符串替换,是将字符串中的一个子串替换成了新的子串,如果我们想对字符串中的某些字符进行转换,也就是对字符串中的单个字符进行替换,可以调用方法maketrans和translate来实现。

首先调用maketrans方法创建一个转换表,在转换表中声明要将那些字符转换成什么字符,然后将创建的转换表作为参数传给translate方法,实现字符的转换。

maketrans方法创建转换表的语法:

maketrans方法可以传入三个参数:

  • 第一个参数用于指定被转换的字符,如果指定了多个字符,那么转换后的字符也需要指定多个,且数量都要相同,被转换的第一个字符会转换成第二个参数中的第一个字符,案例中会说明。
  • 第二个参数用于指定转换后的字符。
  • 第三个参数用于指定删除那些字符。

定义好一个转换表之后,使用print可以打印这个转换表的内容,此时返回的是一个字典,字典中的每个key:value都是字符对应的ordinal value值。

translate方法将转换表当做参数传入,再被定义的字符串调用,最终实现字符的转换。

1)转换表的创建

定义转换表时,如果指定了多个被转换的字符,那么转换后的字符数量要与被转换的字符数量相同,此时第一个参数和第二个参数会交叉转换,代码如下。

可以使用print函数打印转换表,返回结果是一个字典,在字典中的值是对应字符的ordinal value值,在字典中可以明确的看到什么字符会被转换成什么字符,如下图,97是字符a,55是字符7,97对应的字符会转换成55对应的字符。

image-20220807161147990
讯享网

除了直接以字符串的形式声明被转换字符和转换后字符的原始值外,还可以使用字典的方法声明转换与被转换的字符,因为转换表返回的结果就是一个字典,但是用的最普遍的方法还是直接在转换表中声明被转换的字符。

2)字符的转换

发现字符串中所有的a字符都被转换成了7,所有的g字符都被转换成了8,所有的x字符都被转换成了9。

image-20220807162711194

3)maketrans方法定义转换表时 还可以指定要删除的字符,例如删除字符u、p

image-20220807163117769

4)maketrans方法定义转换表中,还可以不对字符进行转换,只对某些字符进行删除,例如只删除字符u、p

image-20220807163318913

当指定第三个参数时,会将指定的字符删除,其实就是将指定的字符设置成了None对象。

image-20220807163546952

所谓的字符串劈分指的是,根据指定的分隔符,将字符串一分为N个,例如字符串“aaa bbb”,默认的分隔符是空格,根据分隔符可以将这个字符串分为“aaa”,“bbb”,这就是字符串的劈分。字符串的劈分共有两种方法:

1)调用方法split或者rsplit劈分字符串

  • split方法是从字符串的左侧开始劈分字符串,从前往后开始劈分。
  • rsplit方法是从字符串的右侧开始劈分字符串,从后往前开始劈分。

split和rsplit方法会根据分隔符对字符串中所有出现分隔符的地方进行劈分。

默认的分隔符是空格字符串,这两个方法如果不指定最大的劈分次数,输出的内容没有任何区别,并且这两个方法的返回值都是一个列表。

当字符串中没有指定的分隔符时,这两个方法都会返回字符串本身,但是也会将字符串本身放在列表中。

2)调用方法partition或者rpartition劈分字符串

partition和rpartition这两个方法在调用的时候必须指定分隔符,然后对字符串进行劈分,这两个方法对字符串劈分后会返回一个元组。

  • partition方法是左劈分,从左往右找到分隔符第一次出现的位置,然后开始劈分字符串,始终劈分成三个元素,第一个元素是分隔符左侧的部分,第二个元素是分隔符,第三个元素是分隔符后面的部分。
  • rpartition方法是右劈分,从右往左找到分隔符第一次出现的位置,或者从左往右找到分隔符最后一次出现的位置,然后开始劈分字符串,始终劈分成三个元素,第一个元素是分隔符左侧的部分,第二个元素是分隔符,第三个元素是分隔符后面的部分。

partition方法和rpartition只会将字符串中第一次出现分隔符的位置,进行劈分,一分为三,这就是与split方法的最大区别

partition方法和rpartition两个方法只是开始劈分的位置处不同,然后将字符串劈分为三个元素:

  • 分隔符前面的部分
  • 分隔符
  • 分隔符后面的部分

如果字符串中不存在指定的分隔符,两个方法都会返回字符串本身,partition方法劈分的三个元素顺序依次为:字符串本身、空字符串、空字符串,rpartition方法劈分的三个元素依次为:空字符串、空字符串、字符串本身。

1)基本的劈分案例

可以看到split和rsplit两个方法对字符串劈分后,并没有明显的区别。

image-20220807211833467

2)通过参数sep指定分隔符劈分字符串

在split和rsplit方法中都可以使用sep参数指定分隔符,从而根据指定的分隔符去劈分字符串。

可以看到split和rsplit两个方法对字符串劈分后,并没有明显的区别。

image-20220807212154362

当指定的分隔符字符串不存在时,则会返回字符串本身,但是也会将字符串本身放在列表中。

image-20220807212335836

3)通过参数maxsplit指定劈分字符串的最大劈分次数

在split和rsplit方法中都可以使用maxsplit参数指定劈分字符串的最大劈分次数,什么意思呢?原本一个字符串可以被劈分6次,但是我们只需要劈分2次就行,就可以使用maxsplit参数指定指定劈分字符串的最大劈分次数。

当指定了最大的劈分次数时,当超过最大的劈分次数后,剩余的子串会单独作为一部分输出,此时split和rsplit两个劈分方法就会有明显的区别。

当在劈分方法内指定了最大的劈分次数的参数时,split左劈分和rsplit右劈分就会有明显的区别,split方法是从前往后根据分隔符进行劈分,rsplit方法是从后往前根据分隔符进行劈分。

image-20220807213755164

partition方法是左劈分,从左往右找到分隔符第一次出现的位置,然后开始劈分字符串,始终劈分成三个元素,第一个元素是分隔符左侧的部分,第二个元素是分隔符,第三个元素是分隔符后面的部分。

rpartition方法是右劈分,从右往左找到分隔符第一次出现的位置,或者从左往右找到分隔符最后一次出现的位置,然后开始劈分字符串,始终劈分成三个元素,第一个元素是分隔符左侧的部分,第二个元素是分隔符,第三个元素是分隔符后面的部分。

这两个方法,只会根据一个分隔符进行劈分字符串,且始终劈分成三个元素,partition方法的分隔符取决于在字符串中第一次出现的分隔符,rpartition方法的分隔符取决于字符串中最后一次出现的分隔符。

1)调用方法partition劈分字符串

image-20220807222114782

2)调用方法rpartition劈分字符串

确实和理论说明的一样,从左往右找到最后一次分隔符出现的位置,分隔符左侧的部分为元组中的第一个元素,分隔符为第二个元素,分隔符右侧的部分为元组中的第三个元素。

image-20220807230626355

3)当字符串中只有一个分隔符字符串且分隔符后没有任何字符时

当字符串中只有一个分隔符字符串时,且分隔符后面没有任何字符串,此时无论是partition方法还是rpartition方法,劈分的字符串第三个元素一定为空。

第三个元素取的都是分隔符后面的部分,分隔符后面的部分什么也没有,因此就会输出空字符串。

image-20220807231021053

4)当字符串中不存在指定的分隔符字符串(partition方法)

如果字符串中不存在指定的分隔符,partition方法劈分的三个元素顺序依次为:字符串本身、空字符串、空字符串。

第一个元素是字符串的本身,第二个元素是空字符串,第三个元素也是空字符串。

image-20220807231427886

4)当字符串中不存在指定的分隔符字符串(rpartition方法)

如果字符串中不存在指定的分隔符,rpartition方法劈分的三个元素顺序依次为:空字符串、空字符串、字符串本身。

第一个元素是空字符串,第二个元素是空字符串,第三个元素是字符串的本身。

image-20220807231538389

可以调用方法join将多个字符串合并成一个字符串。语法格式如下:

1)使用join方法将列表中多个字符串进行合并

使用join方法可以将列表中的多个元素,元素也都是字符串,将这些字符串进行合并。

使用join方法将列表中的每个元素合并时添加一个分隔符“|”

2)使用join方法将元组中的多个字符串进行合并

join方法也可以将元组中的元素合并。

3)可以把字符串看成是字符的列表,然后使用join方法将这些字符合并成字符串

可以把字符串看成是字符的列表,然后使用join将这些字符加上分隔符合并成新的字符串。

image-20220807235243782

到此这篇关于Python字符串的字符转换、字符串劈分、字符串合并的文章就介绍到这了,更多相关Python字符串合并内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

小讯
上一篇 2025-04-15 16:55
下一篇 2025-05-11 13:58

相关推荐

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