Python输入多行文本有三种常用方法:三引号字符串适用于代码中预定义多行内容;input()循环读取适合用户交互,可设空行或关键词(如END)结束;读文件则用open()配合read()或readlines();粘贴多行可用sys.stdin.read().strip()捕获EOF。

Python 中输入多行文本,常用方法有三种:用换行符 \n 拼接、三引号字符串字面量、以及循环读取直到特定结束标记。关键看你是写死多行内容,还是运行时由用户逐行输入。
用三引号直接写多行字符串
适合在代码里预定义多行文本(比如帮助说明、SQL 查询、模板):
text = """第一行
第二行
第三行"""
print(text)
注意:三引号(""" 或 ''')保留内部所有换行和缩进,如果不想缩进影响输出,可用括号 + 字符串拼接或 textwrap.dedent() 清理。
立即学习“Python免费学习笔记(深入)”;
用 input() 循环读入多行(用户交互场景)
当需要用户手动输入多行,常见做法是设定一个结束条件,比如空行或输入 quit:
- 按空行结束:
lines = []
while True:
line = input()
if line == "":
break
lines.append(line)
text = "\n".join(lines)
Shopxp购物系统历经多年的考验,并在推出shopxp免费购物系统下载之后,收到用户反馈的各种安全、漏洞、BUG、使用问题进行多次修补,已经从成熟迈向经典,再好的系统也会有问题,在完善的系统也从在安全漏洞,该系统完全开源可编辑,当您下载这套商城系统之后,可以结合自身的技术情况,进行开发完善,当然您如果有更好的建议可从官方网站提交给我们。Shopxp网上购物系统完整可用,无任何收费项目。该系统经过
- 按特定关键词结束(如
END):
lines = []
while (line := input()) != "END":
lines.append(line)
text = "\n".join(lines)
读取文件中的多行内容
如果多行数据存在文件里,直接用 open() 读取更自然:
with open("data.txt", "r", encoding="utf-8") as f:
text = f.read() # 保留全部换行
# 或 lines = f.readlines() # 返回带\n的行列表注意:f.read() 一次性读整个文件;f.readlines() 返回每行含末尾 \n 的列表;list(f) 效果类似。
小技巧:处理粘贴的多行输入(不换行就结束)
终端中有时用户会一次性粘贴多行,但 input() 默认只读一行。这时可改用:
-
sys.stdin.read().strip()—— 读取所有标准输入直到 EOF(Linux/macOS Ctrl+D,Windows Ctrl+Z) - 配合
try/except捕获EOFError更健壮
import sys
try:
text = sys.stdin.read().strip()
except EOFError:
text = ""










