Python 字符串是编程中最常用的数据类型,掌握它的内置函数,能大幅提升字符串处理效率!本篇整理了分类清晰、代码可直接运行的字符串常用函数,适合新手收藏学习,转发也方便查看~
一、字符串基础操作函数
1. 求字符串长度:len()
返回字符串的字符个数(中文、英文、符号都算1个字符)
s = "Hello Python"
print(len(s)) # 输出:12
2. 字符串拼接:+ / join()
# 方法1:+ 号
s1 = "Hello"
s2 = "World"
print(s1 + " " + s2) # 输出:Hello World
# 方法2:join() 拼接列表内所有字符串
lst = ["我", "爱", "Python"]
print("".join(lst)) # 输出:我爱Python
print("-".join(lst)) # 输出:我-爱-Python
3. 字符串重复:*
快速生成重复字符串
s = "666"
print(s * 3) # 输出:666666
4. 字符串切片:[起始:结束:步长]
截取字符串指定部分,左闭右开(包含起始,不包含结束)
s = "ABCDEFG"
print(s[0:3]) # 输出:ABC(取索引0-2)
print(s[::2]) # 输出:ACEG(步长为2,全量截取)
print(s[::-1]) # 输出:GFEDCBA(字符串反转)
二、字符串大小写转换函数
1. 全部大写:upper()
2. 全部小写:lower()
3. 首字母大写:capitalize()
4. 每个单词首字母大写:title()
5. 大小写互换:swapcase()
s = "hello python"
print(s.upper()) # 输出:HELLO PYTHON
print(s.lower()) # 输出:hello python
print(s.capitalize()) # 输出:Hello python
print(s.title()) # 输出:Hello Python
s2 = "PyThOn"
print(s2.swapcase()) # 输出:pYtHoN
三、字符串查找与判断函数
1. 查找子串位置
s = "I love Python"
print(s.find("Python")) # 输出:7(子串起始索引)
print(s.find("Java")) # 输出:-1
print(s.index("love")) # 输出:2
# print(s.index("Java")) # 报错:ValueError
2. 统计子串出现次数:count()
s = "ababa abc"
print(s.count("ab")) # 输出:2
3. 字符串判断(返回 True/False)
| |
|---|
startswith(子串) | |
endswith(子串) | |
isalpha() | |
isdigit() | |
isalnum() | |
isspace() | |
s = "Python123"
print(s.startswith("Py")) # True
print(s.endswith("123")) # True
print(s.isalpha()) # False(包含数字)
print(s.isdigit()) # False
print(s.isalnum()) # True
四、字符串替换与分割函数
1. 替换子串:replace(旧子串, 新子串, 替换次数)
s = "Hello Java Java"
print(s.replace("Java", "Python")) # 输出:Hello Python Python
print(s.replace("Java", "Python", 1))# 输出:Hello Python Java
2. 分割字符串:split(分隔符, 分割次数)
按指定符号分割字符串,返回列表
s = "苹果,香蕉,橘子,葡萄"
print(s.split(",")) # 输出:['苹果', '香蕉', '橘子', '葡萄']
s2 = "a b c d"
print(s2.split()) # 默认按空格分割:['a', 'b', 'c', 'd']
3. 去除首尾空白/指定字符:strip()
strip():去除首尾空白(空格、换行、制表符)
s = " Hello Python \n"
print(s.strip()) # 输出:Hello Python
s2 = "!!!666!!!"
print(s2.strip("!")) # 输出:666
五、字符串格式化函数
1. f-string(Python3.6+ 推荐)
name = "小明"
age = 20
print(f"我叫{name},今年{age}岁") # 输出:我叫小明,今年20岁
2. format() 格式化
print("我叫{},今年{}岁".format("小红", 18))
print("我叫{name},今年{age}岁".format(name="小刚", age=22))
3. 百分号 % 格式化(老式写法)
print("我叫%s,今年%d岁" % ("小李", 19))
六、字符串填充与对齐函数
1. 居中对齐:center(长度, 填充符)
2. 左对齐:ljust()
3. 右对齐:rjust()
s = "Python"
print(s.center(10, "*")) # 输出:**Python**
print(s.ljust(10, "-")) # 输出:Python----
print(s.rjust(10, "=")) # 输出:====Python
七、高频面试小技巧
- 大小写不敏感比较:
s1.lower() == s2.lower() - 批量替换多个字符:用
str.translate()
总结
- 基础操作:
len()、+、*、切片是字符串核心用法 - 判断函数:
startswith、isdigit 等返回布尔值,适合条件判断