加载中...

python 字符替换和删除

问题

  • 在编程中python 字符替换和删除是常见的操作,熟悉掌握操作字符串还是很有必要的

    str.maketrans() 是 Python 中一个非常实用的字符串方法,它通常与 translate() 方法配合使用,用于高效地执行字符的替换或删除操作

    简单来说 maketrans() 负责制定规则(创建映射表),而 translate() 负责执行规则(根据映射表转换字符串)

使用两个字符串进行字符替换

  • 语法:str.maketrans(x, y)

  • 参数:
    x: 包含需要被替换的字符的字符串
    y: 包含替换目标的字符的字符串

    点击查看代码
    # 创建映射表: 将 'a'->'1', 'b'->'2', 'c'->'3'
    table = str.maketrans("abc", "123")
    
    # 应用映射
    text = "hello abc"
    result = text.translate(table)
    print(result)  # 输出: hello 123
    

使用字典进行字符映射

  • 语法: str.maketrans(dictionary)

  • 参数:
    dictionary: 一个字典,键为 原字符, 值为替换后字符

    点击查看代码
    # 使用字典创建映射表
    trans_dict = {'h': 'H', 'w': 'W', 'o': '0'}
    table = str.maketrans(trans_dict)
    
    # 应用映射
    text = "hello world"
    result = text.translate(table)
    print(result)  # 输出: Hell0 W0rld
    

删除指定的字符

  • 语法: str.maketrans("", "", z)

  • 参数: z: 包含所有需要删除的字符的字符串

    点击查看代码
    import string # 用于获取标点符号常量
    
    # 创建映射表:删除所有标点符号
    # string.punctuation 包含了常见的英文标点
    table = str.maketrans("", "", string.punctuation)
    
    # 应用映射
    text = "Hello, world! How are you?"
    result = text.translate(table)
    print(result)  # 输出: Hello world How are you
    
posted @ 2026-03-13 13:26  最大的敌人是自律  阅读(19)  评论(0)    收藏  举报