Python 中如何定义多行字符串(把长字符串拆到多行)?

Python 多行字符串的方法:三引号保留换行、反斜杠续行、括号内相邻字符串自动拼接。本文对比各种写法及适用场景。

最佳实践
Python 中如何定义多行字符串(把长字符串拆到多行)?封面

三种方式:三引号 """...""" 保留换行(适合真正的多行文本);行尾反斜杠 \ 续行(拼接成单行);圆括号内多个相邻字符串自动拼接(推荐用于长字符串拆行)。

方法一:三引号(保留换行)

text = """第一行
第二行
第三行"""

原样保留所有换行和缩进,适合 SQL、HTML 模板、文档字符串。

方法二:反斜杠续行(拼成单行)

long_string = "这是一段很长的字符串,我想把它拆成多行来写,\
让代码更易读。"

注意续行的下一行缩进会被带入字符串,需要对齐到行首或接受空格。

方法三:括号内相邻拼接(推荐)

long_string = (
    "这是一段很长的字符串,"
    "我想把它拆成多行来写,"
    "每行一个片段,自动拼接。"
)

相邻的字符串字面量会自动拼接,缩进不会带入,代码最干净——PEP 8 推荐的长字符串写法。

常见问题(FAQ)

Q:三引号字符串开头的缩进怎么处理?
A:函数/类内部的三引号字符串会带上缩进。用 textwrap.dedent() 去掉公共缩进。

Q:f-string 能多行吗?
A:能。三引号 f-string(f"""...""")或括号拼接的多个 f-string 都可以。

Q:多行字符串里包含引号怎么办?
A:三引号字符串里单双引号随意用,只要不和定界符冲突(连续三个相同引号)。

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台