`
ghh0000
  • 浏览: 23725 次
  • 来自: ...
社区版块
存档分类
最新评论

cookbook1.9 简化字符串t'ranslate方法的使用

 
阅读更多
#-*- coding: utf-8 -*-

import string
def translator(frm='', to='', delete='', keep=None):
    if len(to) == 1:
        to = to * len(to)
    trans = string.maketrans(frm, to)
    
    if keep is not None:
        allchars = string.maketrans('', '')
        delete = allchars.translate(allchars, keep.translate(allchars, delete))
        
    def translate(s):
        return s.translate(trans, delete)
    
    return translate


if '__main__' == __name__:
    
    #选出属于指定集合的字符
    print string.digits
    digits_only = translator(keep = string.digits)
    print digits_only('Chris Perkins:224-7992')
    
    #移除属于某字符集合的元素
    no_digits = translator(delete=string.digits)
    print no_digits('Eric chen: 1234-5678')  
    
    #用某个字符替换属于某指定集合的字符
    digits_to_hash = translator(frm=string.digits, to='*')
    print digits_to_hash('Eric chen: 1234-5678') 

分享到:
评论

相关推荐

    Python Cookbook, 2nd Edition pdf

    - **1.9 简化字符串的translate方法使用**:解释了如何更高效地使用Python的字符串translate方法。 - **1.10 过滤字符串中的特定字符**:介绍了如何从字符串中过滤掉特定字符或字符集。 - **1.11 判断字符串是...

    Python Cookbook

    3. **3.3 对齐字符串**:讲解了如何使用字符串格式化或填充字符来对齐文本。 4. **3.4 去除字符串两端的空白**:使用`strip()`、`lstrip()`和`rstrip()`方法去除字符串首尾的空白字符。 5. **3.5 字符串连接**:...

    Javascript Cookbook

    - 使用 `padStart()` 方法在字符串左侧添加指定数量的填充字符。 - 使用 `padEnd()` 方法在字符串右侧添加指定数量的填充字符。 - 注意这些方法在较旧的浏览器中可能不支持,需要使用 polyfill。 **总结**: 以上...

    OReilly.PHP.Cookbook.3rd.Edition

    - 使用`rand()`、`mt_rand()`或其他方法生成随机字符串。 - 适用于密码生成、安全令牌等场景的技巧。 7. **扩展和压缩制表符**(1.7 Expanding and Compressing Tabs) - 如何在文本处理过程中正确处理制表符。 ...

    Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例

    解决方案:使用更为灵活的re.split()方法,该方法可以为分隔符指定多个模式。 说明:字符串对象的split()只能处理简单的情况,而且不支持多个分隔符,对分隔符周围可能存在的空格也无能为力。 # example.py # # ...

    《Python Cookbook》第三版中文

    《Python Cookbook》第三版是面向Python中高级用户的一本实用指导书籍,它提供了大量的编程解决方案,涉及到数据结构、字符串和文本处理、数字和日期处理、迭代器与生成器的应用、文件与输入输出等Python编程中的...

    python cookbook 英文版

    - 使用字符串操作和正则表达式,可以实现如驼峰命名法、下划线命名法等命名风格之间的转换。 - **在字符和值之间转换** - 利用`ord()`和`chr()`函数可以在ASCII码值和对应的字符之间进行转换。 - **在Unicode和...

    python cookbook 第三版

    - **合并拼接字符串**:了解不同的字符串拼接方法。 - **字符串中插入变量**:学习如何将变量插入到字符串中。 - **以指定列宽格式化字符串**:掌握如何按指定宽度格式化字符串。 - **在字符串中处理html和xml**:...

    PHP CookBook 3rd Edition

    4. 按字节或单词逐个处理字符串:这可能涉及到使用`foreach`循环来遍历字符串中的每个字符或单词,并执行特定的处理。 5. 反转字符串:可以是单词级别的反转也可以是字节级别的反转,可以使用内置函数如`strrev()`...

Global site tag (gtag.js) - Google Analytics