GEEK
← 返回首页

Python 常见的字符串方法有哪些?

#随笔

字符串方法(String Methods)是专门用于操作字符串的内置方法,需要通过 字符串.方法名() 的形式调用。大多数字符串方法不会修改原字符串,而是返回一个新的字符串。常见的方法包括大小写转换、去除空白、替换文本、拆分与拼接字符串,以及判断字符串内容和查找字符等。

Python 常见的字符串方法有哪些?

在学习字符串时,我们已经知道:

  • 可以使用索引获取字符
  • 可以使用切片提取字符串的一部分
  • 字符串属于不可变对象(Immutable)

但是,在实际开发中,我们更常使用**字符串方法(String Methods)**来处理文本。

例如:

  • 把所有字母转换成大写
  • 删除字符串前后的空格
  • 替换某个单词
  • 判断字符串是否以某个内容开头
  • 统计某个字符出现了多少次

这些都可以通过字符串方法轻松完成。


什么是方法(Method)?

方法(Method) 可以理解为:

对象自带的功能。

字符串对象拥有许多可以直接调用的功能,这些功能就叫做字符串方法

方法的调用格式为:

对象.方法名()

例如:

my_str = "hello"

print(my_str.upper())

这里:

upper()

就是字符串的方法。

可以理解为:

字符串
   │
   ▼
调用自己的方法
   │
   ▼
返回新的结果

字符串方法会修改原字符串吗?

绝大多数字符串方法都不会修改原字符串

例如:

my_str = "hello"

new_str = my_str.upper()

print(my_str)
print(new_str)

输出:

hello
HELLO

可以看到:

  • my_str 没有发生变化
  • upper() 返回了一个新的字符串

这是因为字符串是不可变对象


upper() —— 全部转换为大写

作用:

将所有字母转换为大写。

例如:

my_str = "hello world"

print(my_str.upper())

输出:

HELLO WORLD

常用于:

  • 用户输入统一转换
  • 忽略大小写比较
  • 显示标题

lower() —— 全部转换为小写

作用:

将所有字母转换为小写。

例如:

my_str = "Hello World"

print(my_str.lower())

输出:

hello world

经常与 upper() 配合使用。


strip() —— 删除首尾字符

作用:

删除字符串开头和结尾的空白字符。

例如:

my_str = "   hello world   "

print(my_str.strip())

输出:

hello world

默认删除:

  • 空格
  • 制表符(\t
  • 换行符(\n

也可以删除指定字符,例如:

text = "***Python***"

print(text.strip("*"))

输出:

Python

注意:

strip() 只会删除开头和结尾的字符,不会删除中间的字符。


replace() —— 替换字符串

作用:

把指定内容替换成新的内容。

语法:

字符串.replace(旧内容, 新内容)

例如:

my_str = "hello world"

print(my_str.replace("hello", "hi"))

输出:

hi world

如果原字符串中有多个匹配内容,

默认会全部替换。


split() —— 拆分字符串

作用:

按照指定分隔符,把字符串拆分成列表(List)。

例如:

my_str = "hello world"

print(my_str.split())

输出:

['hello', 'world']

默认按照空格拆分。

也可以指定分隔符:

text = "apple,banana,orange"

print(text.split(","))

输出:

['apple', 'banana', 'orange']

join() —— 拼接字符串

作用:

将多个字符串按照指定分隔符连接成一个新的字符串。

语法:

"分隔符".join(可迭代对象)

例如:

words = ["hello", "world"]

print(" ".join(words))

输出:

hello world

如果使用:

"-".join(words)

输出:

hello-world

可以理解为:

使用指定的字符,把列表中的每个元素连接起来。


startswith() —— 判断开头

作用:

判断字符串是否以指定内容开头。

返回:

  • True
  • False

例如:

my_str = "hello world"

print(my_str.startswith("hello"))

输出:

True

如果判断:

print(my_str.startswith("world"))

输出:

False

endswith() —— 判断结尾

作用:

判断字符串是否以指定内容结尾。

例如:

my_str = "hello world"

print(my_str.endswith("world"))

输出:

True

如果:

print(my_str.endswith("hello"))

输出:

False

find() —— 查找位置

作用:

返回指定字符串第一次出现的位置(索引)。

例如:

my_str = "hello world"

print(my_str.find("world"))

输出:

6

因为:

world

从索引:

6

开始。

如果没有找到:

print(my_str.find("Python"))

输出:

-1

这是 find() 的特点:

找不到不会报错,而是返回 -1


count() —— 统计出现次数

作用:

统计某个字符或字符串出现了多少次。

例如:

my_str = "hello world"

print(my_str.count("o"))

输出:

2

因为:

字母:

o

出现了两次。


capitalize() —— 首字母大写

作用:

将字符串第一个字符转换为大写,其余字符转换为小写。

例如:

my_str = "hello world"

print(my_str.capitalize())

输出:

Hello world

注意:

只有第一个字母会变成大写。


title() —— 每个单词首字母大写

作用:

将每个单词的首字母转换为大写。

例如:

my_str = "hello world"

print(my_str.title())

输出:

Hello World

适用于:

  • 标题
  • 姓名
  • 文章标题

isupper() —— 是否全部大写

作用:

判断字符串中的字母是否全部为大写。

例如:

my_str = "HELLO"

print(my_str.isupper())

输出:

True

如果:

my_str = "Hello"

输出:

False

islower() —— 是否全部小写

作用:

判断字符串中的字母是否全部为小写。

例如:

my_str = "hello"

print(my_str.islower())

输出:

True

如果:

my_str = "Hello"

输出:

False

常用字符串方法速查表

方法 作用 返回值类型
upper() 全部转换为大写 str
lower() 全部转换为小写 str
strip() 删除首尾空白或指定字符 str
replace(old, new) 替换指定内容 str
split() 拆分字符串 list
"分隔符".join() 拼接多个字符串 str
startswith() 判断是否以指定内容开头 bool
endswith() 判断是否以指定内容结尾 bool
find() 查找第一次出现的位置,找不到返回 -1 int
count() 统计出现次数 int
capitalize() 首字母大写,其余小写 str
title() 每个单词首字母大写 str
isupper() 是否全部大写 bool
islower() 是否全部小写 bool

常见错误

❌ 认为方法会修改原字符串

错误理解:

text = "hello"

text.upper()

print(text)

很多人认为输出:

HELLO

实际上输出:

hello

因为:

upper() 返回的是一个新的字符串。

正确写法:

text = text.upper()

❌ 对 split() 的结果理解错误

例如:

text = "hello world"

result = text.split()

此时:

result

已经不是字符串,而是:

list

即列表类型。


学习小结

知识点 说明
方法(Method) 对象自带的功能,通过 对象.方法() 调用。
不可变性 大多数字符串方法不会修改原字符串,而是返回新的字符串。
大小写转换 upper()lower()capitalize()title()
文本处理 strip() 删除首尾字符,replace() 替换内容。
拆分与拼接 split() 将字符串拆分为列表,join() 将多个字符串连接成一个字符串。
查找与判断 find() 查找位置,count() 统计次数,startswith()endswith()isupper()islower() 用于判断字符串特征。

总结

  • 字符串方法(String Methods)是字符串对象提供的一系列内置功能,可以帮助我们方便地处理文本。
  • 调用方法时使用 字符串.方法名() 的形式,大多数方法都会返回一个新的字符串,而不会修改原字符串。
  • 常用方法包括大小写转换、删除空白、替换文本、拆分与拼接字符串,以及查找和判断字符串内容等。
  • 熟练掌握这些字符串方法,可以大大提高文本处理效率,也是后续学习文件操作、数据清洗和 Web 开发的重要基础。