Python str字符串类型的用法(附带实例)
字符串(str)是 Python 中的基础数据类型之一,常用于表示文本信息,比如名字、地址等。
在 Python 程序中,字符串是由零个或多个字符组成的序列,可以包含字母、数字、符号、空格等。Python 中的字符串是不可变的,一旦创建,就不能直接修改其中的内容。
字符串可以用单引号('
)、双引号("
)或三引号('''
或 """
)来定义。例如:
s1 = "Hello" # 双引号 s2 = 'World' # 单引号 s3 = '''这是 多行字符串''' # 三引号
三引号则适合多行文本或文档字符串。单引号和双引号功能相同,选择哪种取决于字符串中是否包含引号。例如:
# 当字符串中包含单引号时,使用双引号来定义字符串 sentence_with_single_quote = "It's a sunny day." # 当字符串中包含双引号时,使用单引号来定义字符串 sentence_with_double_quote = 'He said, "Let\'s go for a walk."'
Python str字符串类型的基本操作
1) 拼接与重复
字符串可以用 + 进行拼接,用 * 进行重复:
s1 = "Hello" s2 = "Python" s3 = s1 + " " + s2 # 拼接 s4 = s1 * 3 # 重复 print(s3) # 输出 Hello Python print(s4) # 输出 HelloHelloHello
2) 索引与切片
字符串是一个有序序列,可以通过索引访问单个字符,或通过切片获取子字符串。索引从 0 开始,负数则表示从末尾计数。
s[start:stop:step] - start: 开始位置(包含),省略则从头开始 - stop: 结束位置(不包含),省略则到末尾 - step: 步长,默认为 1,负数表示反向
例如:
s = "Python" print(s[0]) # 输出 P print(s[-1]) # 输出 n print(s[1:4]) # 输出 yth print(s[:3]) # 输出 Pyt print(s[::2]) # 输出 Pto(每隔一个字符) print(s[::-1]) # 输出 nohtyP(反转)
3) str类型转换与检查
可以用 str() 将其他类型转换为字符串,用 type()
或 isinstance()
检查类型:
x = str(123) # 整数转字符串 y = str(3.14) # 浮点数转字符串 print(x) # 输出 "123" print(type(y)) # 输出print(isinstance(x, str)) # 输出 True
4) str字符串中的转义字符
如果字符串中需要包含引号或其他特殊字符,可以使用转义字符 \
。以下是常见的转义序列:
\n 换行 \t 制表符(Tab) \' 单引号 \" 双引号 \\ 反斜杠本身
例如:
s1 = "She said, \"Hi!\"" s2 = 'It\'s raining' s3 = "第一行\n第二行" print(s1) # 输出 She said, "Hi!" print(s2) # 输出 It's raining print(s3) # 输出 第一行(换行)第二行
如果不想处理转义,可以使用原始字符串(raw string),在字符串前加 r
:
s = r"C:\new\test" print(s) # 输出 C:\new\test
Python str字符串中嵌入变量
Python 允许往字符串中嵌入变量,实现方式有以下几种:1) 直接嵌入表达式
我们可以直接在字符串中嵌入变量或者表达式。例如:
name = "Alice" age = 20 print(f"姓名:{name},年龄:{age}")
注意,直接在字符串中嵌入表达式时,要在 ""
前加 f
。 运行上述代码,结果为:
姓名:Alice,年龄:20
2) 使用format()函数
也可以借助 format() 函数通过占位符{}
插入变量:例如:
score = 95 print("得分:{}".format(score))
3) 使用 % 运算符
较老的方式是用%
,类似 C 语言的格式化。例如:
price = 12.5 print("价格:%.1f" % price)
总结
在 Python 中使用 str 字符串,还有以下几点需要注意:-
不可变性:不能直接修改字符串,例如
s[0] = 'x'
会报错; -
索引越界:访问超出范围的索引会抛出
IndexError;
-
空字符串:空字符串
""
是合法的,长度为 0。