CodeGym /课程 /Python SELF ZH /字符串的高级操作

字符串的高级操作

Python SELF ZH
第 10 级 , 课程 1
可用

9.1 字符串的声明

在Python中,字符串是用于存储和表示文本信息的字符序列。可以用多种方式创建字符串,从而在声明和操作它们时提供灵活性 (你应该已经知道字符串是不可变的)。

字符串声明的主要方法

  1. 单引号: string = '你好,朋友!'
  2. 双引号: string = "你好,朋友!"

这两种方法是等价的,选择哪个取决于程序员的偏好以及字符串中出现的引号类型(以避免使用转义符)。

多行字符串

多行字符串使用三引号声明。可以是三单引号 (''') 或三双引号 (""")。这种方式对于占用多行的文本很方便:


multiline_string = """第一行
第二行
第三行"""
        

字符转义

在Python中,字符串中的字符可以通过反斜杠 \ 转义。这样可以插入特殊字符,比如新区行 \n,制表符 \t,或者是反斜杠本身 \\


escaped_string = "他说: \"你好,朋友!\""
        

我们将在后面几节详细讨论字符转义。

原始字符串

原始字符串 (raw string) 是禁用字符转义的字符串。它们用前缀 r 声明:


raw_string = r"这行中的 \n 不会被视作换行符."
        

字符串格式化

Python 提供了多种字符串格式化方法。其中最强大的方法是 f-字符串,自Python 3.6起可用。它们允许在字符串中嵌入Python表达式:


name = "世界"
formatted_string = f"你好, {name}!"
        

字符串连接

可以通过 「+」 操作符或 join() 方法(用于更复杂的情况)将多个字符串连接起来:


greeting = "你好, " + "朋友!"
        

字符串的不可变性(immunity)

记住,在Python中字符串是不可变的。这意味着任何修改字符串的操作实际上都会创建一个新的字符串。

9.2 嵌套引号

在Python中,处理包含嵌套引号的字符串需要特别注意语法细节,以确保代码的正确性并避免语法错误。

不能随便在用引号包围的文本中写一个引号。例如,您写的代码是:


escaped_string = "他说: "你好,世界!"… "
        

而Python看到的是:


escaped_string = "他说: "你好,世界!"… "
        

它寻找的不是字符串中的最后一个引号,而是最接近的一个。因此,为了在文本中添加引号,需要花点心思。以下是一些用于在Python字符串中管理嵌套引号的方法和技巧:

使用不同类型的引号

Python允许使用单引号 (') 和双引号 (") 来定义字符串。这使得可以在一种引号中嵌套另一种引号:


quote = "他说, '你好,世界!'"
# 或者
quote = '他说, "你好,世界!"'
        

引号转义

当需要在字符串中使用相同的引号时,可以使用反斜杠 (\) 来转义引号:


quote = "他说,\"你好,世界!\" "
        

多行字符串

为了创建包含嵌套引号的多行字符串,可以使用三引号 (''' 或 """)


multiline_quote = """这是一个长篇引述,包含多种类型的引号: "双引号" 和 '单引号'。它跨越多行。"""
        
评论
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION