博客
关于我
【笔记】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/

你可能感兴趣的文章
Objective-C实现abbreviation缩写算法(附完整源码)
查看>>
Objective-C实现ABC人工蜂群算法(附完整源码)
查看>>
Objective-C实现activity selection活动选择问题算法(附完整源码)
查看>>
Objective-C实现AC算法(Aho-Corasick) 算法(附完整源码)
查看>>
Objective-C实现adaboost算法(附完整源码)
查看>>
Objective-C实现Adler32算法(附完整源码)
查看>>
Objective-C实现AES算法(附完整源码)
查看>>
Objective-C实现AffineCipher仿射密码算法(附完整源码)
查看>>
Objective-C实现aliquot sum等分求和算法(附完整源码)
查看>>
Objective-C实现all combinations所有组合算法(附完整源码)
查看>>
Objective-C实现all permutations所有排列算法(附完整源码)
查看>>
Objective-C实现all subsequences所有子序列算法(附完整源码)
查看>>
Objective-C实现AlphaNumericalSort字母数字排序算法(附完整源码)
查看>>
Objective-C实现alternate disjoint set不相交集算法(附完整源码)
查看>>
Objective-C实现alternative list arrange备选列表排列算法(附完整源码)
查看>>
Objective-C实现An Armstrong number阿姆斯特朗数算法(附完整源码)
查看>>
Objective-C实现anagrams字谜算法(附完整源码)
查看>>
Objective-C实现ApproximationMonteCarlo蒙特卡洛方法计算pi值算法 (附完整源码)
查看>>
Objective-C实现area under curve曲线下面积算法(附完整源码)
查看>>
Objective-C实现argmax函数功能(附完整源码)
查看>>