gpt4 book ai didi

python - python输入可以处理内联\n吗?

转载 作者:太空宇宙 更新时间:2023-11-04 10:58:34 25 4
gpt4 key购买 nike

我正在尝试编写一个程序来接受用户输入,该输入将是粘贴的文本 block (包括多个换行符/回车符)。我无法找到有关 Python 如何(如果)处理此问题的信息。正常行为是输入命令在遇到第一个\n 时立即完成。

最佳答案

当我第一次看到您的问题时,我将“输入命令”读作“正在输入的命令”,而不是“input() 函数”。我现在假设您正在从命令行收集数据。

接受带有换行符的输入的问题是:你什么时候停止接受输入?下面的示例通过等待用户点击 ctrl-d 来解决这个问题。这会在 raw_input() 函数中触发异常,然后跳出 while 循环。

text = ''

# keep looping forever
while True:
try:
# grab the data from the user, and add back the newline
# which raw_input() strips off
text += raw_input() + "\n"
except EOFError:
# if you encounter EOF (which ctrl-d causes) break out of the loop
break

# print the text you've gathered after a dashed line
print "\n------------\n" + text

显然你会想要警告你的用户他们必须使用 ctrl-d 来停止输入文本,这可能有点尴尬——但如果他们已经在命令中提示它应该不会那么糟糕。

此外,我在这里使用了 raw_input(),它收集输入但不作为 input() exec()做。如果您要执行结果,只需将 print() 调用替换为:

exec(text)

得到相似的结果。

关于python - python输入可以处理内联\n吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7814979/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com