字符串相关的方法有哪些?
在Python中,字符串是不可变序列,提供了丰富的方法用于操作和处理文本数据。以下分类列举常用方法:
大小写转换
s = "Hello World"
s.lower() # 转为小写:"hello world"
s.upper() # 转为大写:"HELLO WORLD"
s.title() # 单词首字母大写:"Hello World"
s.capitalize() # 首字母大写:"Hello world"
s.swapcase() # 大小写互换:"hELLO wORLD"
查找与替换
s.find("lo") # 返回首次出现索引:3(未找到返回-1)
s.rfind("l") # 从右查找:9
s.index("Wo") # 类似find但未找到抛出异常
s.replace("l", "L") # 替换所有匹配项:"HeLLo WorLd"
空白处理
" text ".strip() # 去除两端空白:"text"
"text".ljust(8, "-") # 左对齐填充:"text----"
"text".center(9) # 居中:" text "
判断类方法
"123".isnumeric() # 是否数字:True
"abc".isalpha() # 是否纯字母:True
"a1".isalnum() # 是否字母或数字:True
" ".isspace() # 是否空白字符:True
拆分与连接
"a,b,c".split(",") # 分割为列表:['a','b','c']
"-".join(['a','b']) # 连接为字符串:"a-b"
s.partition(" ") # 分割为三部分:('Hello',' ','World')
格式化方法
"{0} {1}".format("a", "b") # 位置格式化:"a b"
f"{s[:5]}" # f-string格式化:"Hello"
"price: {:.2f}".format(3.1415) # 数字格式化:"price: 3.14"
编码处理
"中文".encode("utf-8") # 转为字节序列
b"\xe4\xb8\xad".decode("utf-8") # 字节转字符串
其他实用方法
"hello".count("l") # 统计出现次数:2
len("abc") # 获取长度:3
"42".zfill(5) # 前导零填充:"00042"
"text".endswith("t") # 是否以指定结尾:True
注意所有字符串方法都返回新字符串,原始字符串不会被修改。对于更复杂的模式匹配,建议结合正则表达式模块re使用。