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

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

Python 字符串模块 string 文档

方法 str.maketrans()

str.maketrans(x[, y[, z]]) 是一个静态方法,可用于 str.translate()。它返回一个可用于字符串翻译的翻译表。

参数说明

  • x:用于识别字符串中需要匹配的值。
  • y:用于将匹配值替换为新字符的字符串。新字符串的长度需与 x 相同。
  • z:用于标记需要删除的字符。

注意:参数 xy 需同时存在,并可以为空。

使用示例

import stringi = 'iiiiiloveyou'trans_table = str.maketrans('', '', 'i')print(i.translate(trans_table))  # 输出: 'loveyou'i = 'iiiiiloveyou'trans_table = string.maketrans('i', 'y')print(i.translate(trans_table))  # 输出: 'yyyyyloveyou'

翻译表生成规则

  • 仅一个参数

    如果只提供一个参数,必须是字典。字典的键可以是 Unicode 编码(整数)或字符(单字符字符串)。字符键会被转换为 Unicode 编码。

  • 两个参数

    两个字符串必须长度相等。生成的字典中,每个字符在 x 中会映射到相应位置的字符在 y 中。

  • 三个参数

    第三个参数是字符串,字符会映射到 None

split() 的区别

split()translate() 的工作原理不同:

  • split():将字符串拆分为多个部分,类似于火车每节车厢的连接环被移除,形成独立的部分。
  • translate():先移除连接环,再重新连接需要的部分,形成完整的字符串。

这使得 translate() 的结果仍然是一个字符串,而 split() 的结果是一个列表。

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

你可能感兴趣的文章
NT symbols are incorrect, please fix symbols
查看>>
ntelliJ IDEA 报错:找不到包或者找不到符号
查看>>
ntko web firefox跨浏览器插件_深度比较:2019年6个最好的跨浏览器测试工具
查看>>
ntko文件存取错误_苹果推送 macOS 10.15.4:iCloud 云盘文件夹共享终于来了
查看>>
ntpdate 通过外网同步时间
查看>>
NTPD使用/etc/ntp.conf配置时钟同步详解
查看>>
NTP及Chrony时间同步服务设置
查看>>
NTP配置
查看>>
NUC1077 Humble Numbers【数学计算+打表】
查看>>
NuGet Gallery 开源项目快速入门指南
查看>>
NuGet(微软.NET开发平台的软件包管理工具)在VisualStudio中的安装的使用
查看>>
nuget.org 无法加载源 https://api.nuget.org/v3/index.json 的服务索引
查看>>
Nuget~管理自己的包包
查看>>
NuGet学习笔记001---了解使用NuGet给net快速获取引用
查看>>
nullnullHuge Pages
查看>>
NullPointerException Cannot invoke setSkipOutputConversion(boolean) because functionToInvoke is null
查看>>
null可以转换成任意非基本类型(int/short/long/float/boolean/byte/double/char以外)
查看>>
Numix Core 开源项目教程
查看>>
numpy
查看>>
NumPy 或 Pandas:将数组类型保持为整数,同时具有 NaN 值
查看>>