当前位置:首页>python>python基础:认识Python字符串

python基础:认识Python字符串

  • 2026-10-10 18:27:22
python基础:认识Python字符串

字符串是Python中最常见、最灵活的数据类型之一。无论你是写爬虫、做数据分析,还是开发Web应用,几乎每天都在和字符串打交道。本文将带你从入门到进阶,全面掌握Python字符串的各种玩法。

---

一、入门篇:字符串的创建与基本操作

1.1 如何创建字符串?

在Python中,字符串可以用单引号、双引号或三引号表示:

单引号和双引号作用相同,但可以互相嵌套避免转义:

三引号保留换行格式,常用于文档字符串和多行文本。

1.2 转义字符

一些特殊字符需要用反斜杠转义:

如果不想让转义生效,可以使用原始字符串(在字符串前加`r`):

1.3 字符串的基本操作

拼接:用+ 运算符(注意:只能拼接字符串,不能拼接数字),或join方法,强烈推荐join方法

重复:用* 运算符

长度:len(s)

成员检查:'a' in s 或'a' not in s

示例:

join方法

---

二、核心篇:索引与切片

字符串是有序的字符序列,每个字符都有一个位置(索引)。

2.1 索引

语法:s[索引值]

正向索引:从0开始,s[0] 是第一个字符。

反向索引:从-1开始,s[-1] 是最后一个字符

2.2 切片

切片可以获取子字符串,语法:s[start:end:step]

start:起始索引(包含)

end:结束索引(不包含)

step:步长(省略则默认为1)

常用切片示例:

【注意】:切片不会修改原字符串(字符串不可变),而是返回一个新字符串。

---

三、进阶篇:常用字符串方法

Python字符串提供了大量内置方法,极大方便了文本处理。下面按功能分类介绍。

3.1 大小写转换

3.2 查找与替换

注意:由于没有禁用pycharm编辑器插件的缘故,使用replace方法时,编辑器的插件会自动显示"_old:"、"_new:",实际写代码时这个地方无需书写,大家忽略即可。

3.3 拆分与连接

【注意】:考虑到代码执行效率,拼接大量字符串时,请务必用join方法,而不是“+”拼接。

3.4 去除空白与填充

相关方法:

strip()--去除字符串两端的空白。

lstrip()--去除字符串左侧的空白。

rstrip()--去除字符串右侧的空白。

strip("指定字符")--去除字符串中指定的字符。

zfill(长度)--用于在字符串左侧填充0,知道字符串达到指定数字的长度。

center(长度,字符)--用于将原字符串居中,并在两侧填充指定的字符(省略则默认是空格),使结果字符串达到指定的长度。

ljust(长度,字符)--用于将原字符串左对齐,并在右侧填充指定的字符(省略则默认为空格),使结果字符串达到指定的宽度。

rjust(长度,字符)--用于将原字符串右对齐,并在左侧填充指定的字符(省略则默认为空格),使结果字符串达到指定的宽度。

代码示例:

3.5 判断方法(返回布尔值)

相关方法:

isalnum()--判断字符串是否只由字母和数字组成

isalpha()--判断字符串是否只由字母组成

isdigit()--判断字符串是否只由数字组成

islower()--判断字符串中的字母字符是否都是小写

isupper()--判断字符串中的字母字符是否都是大写

isspace()--判断字符串是否只由空白字符组成

startswith(指定字符)--判断字符串是否以指定字符(串)开始

endswith(指定字符)--判断字符串是否以指定字符(串)结束

代码示例:

3.6 格式化字符串

Python 提供了三种字符串格式化方式。

旧式% 格式化(类似C语言)

str.format() 方法

f-string(推荐使用此方法,简洁、高效,最常用!)

代码示例:

---

四、深入篇:字符串的底层原理

4.1 不可变性

字符串在Python中是不可变对象。这意味着一旦创建,就不能修改字符串中的某个字符。例如,尝试替换字符串中的某个字符,执行时会报错:

所有“修改”字符串的操作(如`upper()`、`replace()`)都会返回一个新的字符串,原字符串不变。

字符串不可变有什么意义?

安全:可作为字典的键。

性能:便于实现字符串驻留(interning),相同字符串可以共享内存。

4.2 字符串驻留(String Interning)

Python会对某些短的字符串进行缓存,使得相同的字符串指向同一内存地址,以节省内存。

4.3 编码与解码

计算机存储的是字节,字符串是Unicode字符序列。需要将字符串转换为字节(编码)才能写入文件或网络传输,反之亦然(解码)。

常见编码:`utf-8`(通用)、`gbk`(中文)、`ascii`(仅英文字符)。

处理文件时,务必注意编码一致性,否则会乱码。

---

五、性能优化:字符串拼接的陷阱

初学者常犯的错误:在循环中用“+”拼接字符串。

对于少量拼接,“+”没问题;但如果循环成千上万次,务必用“join”。

---

八、总结

本文从基础到进阶,系统梳理了Python字符串的常用操作:

创建与基本操作:引号、转义、拼接、重复。

索引与切片:灵活截取子串。

内置方法:大小写、查找替换、拆分连接、判断、格式化。

底层原理:不可变性、编码、驻留。

性能优化:用join代替+。

字符串虽小,却是编程的基本功。掌握这些技巧,你的代码会更简洁、高效。

如果你觉得本文有帮助,欢迎点赞、在看、分享!

---

> 注:文中代码均在Python 3.10环境测试通过。

最新文章

随机文章