Python 中的字符串(String)类型用于表示文本数据。字符串是由一系列字符(如字母、数字、标点符号等)组成的序列,这些字符可以是单字节的,也可以是双字节的(如 Unicode 字符集中的字符)。Python 中的字符串是不可变的(immutable),意味着一旦字符串被创建,就不能改变其内容(尽管你可以通过操作来创建新的字符串)。
字符串可以用单引号(')或双引号(")来定义,或者在某些情况下使用三引号(''' 或 """)来定义多行字符串。Python 会自动处理字符串中的转义字符,如换行符(\n)、制表符(\t)等。
字符串的基本操作
拼接:使用 + 运算符可以将两个或多个字符串拼接成一个新的字符串。重复:使用 * 运算符可以重复字符串。索引:使用方括号([])可以访问字符串中的单个字符(索引从 0 开始)。切片:使用方括号([])和冒号(:)可以获取字符串的子串(切片)。长度:使用内置函数 len() 可以获取字符串的长度(即包含的字符数)。成员资格:使用 in 或 not in 运算符可以检查字符串中是否包含某个子串。字符串方法:Python 提供了许多字符串方法,如 upper()(转换为大写)、lower()(转换为小写)、strip()(去除首尾空白字符)、split()(根据分隔符拆分字符串)等。字符串格式化
Python 提供了多种字符串格式化的方法,包括 % 操作符、str.format() 方法以及 f-string(Python 3.6+)等。这些方法允许你将变量的值嵌入到字符串中。
字符串与字节串
在 Python 3 中,字符串是以 Unicode 编码的字符序列,而字节串(bytes)则是以字节为单位的数据序列。字符串和字节串之间可以相互转换,但需要使用编码(如 UTF-8)来指定如何转换。
# 字符串定义s1 = 'Hello, world!'s2 = "Python programming"s3 = '''这是一个多行字符串'''# 字符串操作print(s1 + ' ' + s2) # 拼接print(s1 * 2) # 重复print(s1[0]) # 索引print(s1[7:12]) # 切片print(len(s1)) # 长度# 字符串方法print(s1.upper()) # 转换为大写# 字符串格式化name = 'Alice'age = 30print(f'Name: {name}, Age: {age}') # f-string# 字符串与字节串转换b = s1.encode('utf-8') # 字符串转字节串s = b.decode('utf-8') # 字节串转字符串