Python字符串方法不会修改原字符串所有操作均返回新字符串。字符串作为不可变对象任何方法调用都生成新副本而非原地修改。以下是核心方法分类详解附可运行示例一、基础操作1. 长度统计len(s)返回字符串字符数非字节数。s Hello 世界 print(len(s)) # 输出8中文字符计为1个2. 字符串连接运算符拼接字符串频繁拼接时推荐用join()提升性能。print(Hello World) # 输出Hello World3. 重复操作*运算符重复生成新字符串。print(Hi * 3) # 输出HiHiHi二、大小写转换1. 全部转大写upper()所有字母转大写非字母字符不变。print(Hello, 123.upper()) # 输出HELLO, 1232. 全部转小写lower()所有字母转小写。print(WORLD!.lower()) # 输出world!3. 首字母大写capitalize()仅首字符大写其余转小写。print(python IS awesome.capitalize()) # 输出Python is awesome4. 标题格式title()每个单词首字母大写。print(hello world.title()) # 输出Hello World三、查找与替换1. 子串查找find(sub)返回首次出现的索引未找到返回-1不报错。print(apple.find(p)) # 输出1 print(apple.find(z)) # 输出-1index(sub)功能同find()但未找到时抛出ValueError。# print(apple.index(z)) # 报错ValueError2. 子串计数count(sub)统计子串出现次数。print(banana.count(a)) # 输出33. 子串替换replace(old, new)替换所有匹配项可指定替换次数。print(apple apple.replace(apple, orange, 1)) # 输出orange apple四、去除空白与特殊字符1. 两端去空strip()移除首尾空白字符空格、换行符等。print( text \n.strip()) # 输出text2. 左侧去空lstrip()仅移除左侧空白。print( text .lstrip()) # 输出text3. 右侧去空rstrip()仅移除右侧空白。print( text .rstrip()) # 输出 text4. 自定义字符去除strip(chars)移除首尾指定字符按集合匹配非顺序。print(xx_hello_xx.strip(x_)) # 输出hello五、分割与连接1. 分割为列表split(sep)按分隔符拆分返回列表默认按空白分割。print(a,b,c.split(,)) # 输出[a, b, c]2. 从右分割rsplit(sep, maxsplit)从右侧开始分割可限制分割次数。print(a-b-c-d.rsplit(-, 1)) # 输出[a-b-c, d]3. 列表转字符串join(iterable)用字符串连接可迭代对象。print(-.join([a, b, c])) # 输出a-b-c六、判断与检查1. 开头/结尾检查startswith(prefix)判断是否以指定字符串开头。print(Hello.py.startswith(Hello)) # 输出Trueendswith(suffix)判断是否以指定字符串结尾。print(Hello.py.endswith(.py)) # 输出True2. 字符类型检查isalpha()是否全部为字母不含空格/数字。print(Hello.isalpha()) # 输出True print(Hello123.isalpha()) # 输出Falseisdigit()是否全部为数字字符。print(123.isdigit()) # 输出Trueisspace()是否全部为空白字符。print( \t\n.isspace()) # 输出True关键注意事项不可变性所有方法均不修改原字符串必须用新变量接收结果。大小写敏感find()、replace()等默认区分大小写。空字符串处理split()默认按任意空白分割连续空白视为一个分隔符。.split()返回空列表[]但.split( )返回[]。高频方法推荐日常开发中strip()、split()、join()、replace()使用频率最高。完整方法列表可参考官方文档Python String Methods。实际编码中建议优先使用f-string 格式化如fValue: {x:.2f}替代旧式%或format()。