Python 字符串
字符串(str
)是 Python 中用于处理文本数据的核心类型。它本质上是一个由 Unicode 字符组成的不可变序列。这意味着一旦创建,字符串的内容就不能直接修改。
你可以通过多种方式创建字符串,最常见的就是使用引号将文本括起来。
- 单引号:
'单引号字符串,可以包含 "双引号" '
- 双引号:
"双引号字符串,可以包含 '单引号' "
- 三引号:
'''三个单引号,用于多行字符串'''
,"""三个双引号,也用于多行字符串"""
三引号的特别之处在于,它们允许你创建跨越多行的字符串,这对于存储长文本或代码片段非常方便。
python
s = "这是一个字符串"
s1 = """这是一个
多行
字符串"""
s2 = '''这也是一个
多行
字符串'''
神奇的转义字符
反斜杠 (\
) 在字符串中扮演着特殊的角色,它被称为转义字符。它可以用来表示一些无法直接输入的字符,或者取消某些字符的特殊含义。
以下是一些常用的转义字符及其含义:
转义序列 | 含义 | 示例 |
---|---|---|
\\ | 反斜杠 (\ ) | print("路径:C:\\\\folder") |
\' | 单引号 (' ) | print('他说:\'你好!\'') |
\" | 双引号 (" ) | print("她说:\"Hello!\"") |
\a | ASCII 响铃 (BEL) | # 响铃一声(可能听不见) |
\b | ASCII 退格 (BS) | print("abc\b") # 输出 ab |
\f | ASCII 换页 (FF) | # 鲜少使用 |
\n | ASCII 换行 (LF) | print("第一行\n第二行") |
\r | ASCII 回车 (CR) | # 鲜少使用 |
\t | ASCII 水平制表符 (TAB) | print("姓名\t年龄") |
\v | ASCII 垂直制表符 (VT) | # 鲜少使用 |
需要注意的是,虽然你可以使用 \'
和 \"
来表示引号,但 Python 允许你在单引号字符串中直接包含双引号,反之亦然,这样可以避免不必要的转义。 例如: '我的名字是 "Python"。'
和 "Python 的世界"
都是合法的字符串。
Unicode:让字符串无国界
Python 字符串天生支持 Unicode 字符,这意味着你可以轻松地处理各种语言的文本。 Unicode 为世界上几乎所有的字符都分配了一个唯一的数字,称为码点。
你可以使用 \u
后跟 4 位十六进制数来表示 Unicode 字符。
python
>>> print("E = mc\u00B2")
E = mc²
在这个例子中,\u00B2
代表 Unicode 字符 "上标二"。 你还可以使用 \U
后跟 8 位十六进制数来表示更大的 Unicode 码点。
万物皆可字符串
有时候,你可能需要将其他类型的数据转换为字符串。 这时,可以使用内置的 str()
函数。
python
>>> str(9)
'9'
>>> str(10.0)
'10.0'
>>> str(True)
'True'
str()
函数可以接受任何 Python 对象作为参数,并返回该对象的字符串表示形式。这在很多情况下都非常有用,例如在拼接字符串或将数据写入文件时。