博客
关于我
【笔记】Python3中使用string模块删除&替换字符串中的特定值
阅读量:573 次
发布时间:2019-03-09

本文共 1084 字,大约阅读时间需要 3 分钟。

官方文档

static str.maketrans(x[, y[, z]])
This static method returns a translation table usable for str.translate().
If there is only one argument,
it must be a dictionary mapping Unicode ordinals (integers) or characters (strings of length 1) to Unicode ordinals,
strings (of arbitrary lengths) or None. Character keys will then be converted to ordinals.
If there are two arguments,
they must be strings of equal length,
and in the resulting dictionary,
each character in x will be mapped to the character at the same position in y.
If there is a third argument, it must be a string, whose characters will be mapped to None in the result.

语法

i.translate(str.maketrans(x, y, z)

参数

  • x–>在字符串中所需识别(匹配)的值
  • y–>将要填入到所匹配值的位置的新值。新值的长度需与原值相等。

x、y为配套使用,需同时存在可以为空

  • z–>需要删除的值

示例

import stringi = 'iiiiiloveyou'i.translate(str.maketrans('','','i')print(i)'loveyou'---i.translate(str.maketrans('i','y')print(i)'yyyyyloveyou'

与split()区别

如果将子字符串比喻为火车的一节节车厢。

split()对字符串的处理可以理解为:将一节节车厢之间的链接环拿走,各个车厢变成一个个单独的个体,而非一个整体,也就是为什么输出不是一个字符串,而是一个列表的原因。

string模块则是将车厢之间的链接环先断开,再将需要的车厢重现链接成为一辆火车,而不是单独的个体。因此输出结果为一个字符串。

转载地址:http://khppz.baihongyu.com/

你可能感兴趣的文章
Vue踩坑笔记 - 关于vue静态资源引入的问题
查看>>
Netty工作笔记0025---SocketChannel API
查看>>
Netty工作笔记0027---NIO 网络编程应用--群聊系统2--服务器编写2
查看>>
Netty工作笔记0050---Netty核心模块1
查看>>
Netty工作笔记0057---Netty群聊系统服务端
查看>>
Netty工作笔记0060---Tcp长连接和短连接_Http长连接和短连接_UDP长连接和短连接
查看>>
Netty工作笔记0063---WebSocket长连接开发2
查看>>
Netty工作笔记0070---Protobuf使用案例Codec使用
查看>>
Netty工作笔记0077---handler链调用机制实例4
查看>>
Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
查看>>
Netty工作笔记0085---TCP粘包拆包内容梳理
查看>>
Netty常用组件一
查看>>
Netty常见组件二
查看>>
netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
查看>>
Netty心跳检测机制
查看>>
Netty核心模块组件
查看>>
Netty框架内的宝藏:ByteBuf
查看>>
Netty框架的服务端开发中创建EventLoopGroup对象时线程数量源码解析
查看>>
Netty源码—2.Reactor线程模型一
查看>>
Netty源码—3.Reactor线程模型三
查看>>