2023-05-08 02:01:22
Python 提供了多种字符串分割与拼接的方法,其中最常用的是 split() 和 join(),同时 os.path 模块也提供了路径相关的分割与拼接方法。以下是具体说明与实例:
1. 字符串分割方法 split()功能将字符串按指定分隔符拆分为列表,支持限制分割次数。
语法str.split(sep=None, maxsplit=-1)将序列(如列表、元组)中的字符串元素按指定分隔符拼接成一个新字拍拿符串。
语法sep.join(iterable)将路径拆分为目录名和文件名两部分,返回元组 (dir, file)。
示例import ospath = r"C:Program Files123.doc"print(os.path.split(path)) # 输出掘握: ('C:Program Files', '123.doc')# 处理末尾带斜杠的路径print(os.path.split(r"C:Program Files")) # 输出: ('C:Program Files', '')os.path.join()功能将多个路径组件判贺庆智能拼接为完整路径,自动处理斜杠方向和冗余分隔符。
示例import os# 拼接路径print(os.path.join("C:", "csv", "test.csv")) # 输出: 'C:csvtest.csv'# 忽略第一个绝对路径前的参数print(os.path.join("windowstemp", "C:", "csv", "test.csv")) # 输出: 'C:csvtest.csv'# Linux 路径示例print(os.path.join("/home/aa", "/home/aa/bb", "/home/aa/bb/c")) # 输出: '/home/aa/bb/c'4. 综合实例:敏感词替换函数以下是一个将字符串中指定单词替换为星号的函数:
def censor(text, word): # 按空格分割字符串 texts = text.split(" ") for i in range(len(texts)): if texts[i] == word: texts[i] = "*" * len(word) # 替换为对应长度的星号 return " ".join(texts) # 重新拼接为字符串# 测试print(censor("this hack is wack hack", "hack")) # 输出: "this is wack "print(censor("hey hey hey", "hey")) # 输出: "* * *"关键点这些方法在文本处理和路径操作中非常高效,掌握它们能显著提升代码简洁性和可读性。