Eclipse/PyDev将粘贴到控制台中的新行视为指令,但我希望它将它们作为长字符串的一部分进行解析

2024-09-30 18:34:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在编写一个Python脚本来自动执行一些重复的文本修改任务。我使用PyDev作为Eclipse的插件作为IDE。在

我需要脚本接受从剪贴板粘贴的用户输入。输入通常是多行,包含许多换行符。在

我目前有脚本要求输入如下:

oldTableString = raw_input('Paste text of old table here:\n')

控制台正确显示提示并等待用户输入。但是,一旦我将文本粘贴到控制台中,它会将粘贴文本中的任何换行符解释为按enter按钮,并执行代码,好像它接收到的唯一输入是粘贴文本的第一行(在第一个换行字符之前),然后按enter键(它将其解释为我输入完毕)。在

我已经确认它只通过以下行读取输入的第一行:

^{pr2}$

…正如预期的那样,它只打印出我粘贴到控制台的第一行。在


如何让Eclipse识别出我希望它将我粘贴到控制台中的所有内容(包括新行)作为单个字符串进行解析?在

谢谢!在


Tags: text用户文本脚本插件inputraw粘贴
2条回答
text = ""

tmp = raw_input("Enter text:\n")

while tmp != "":
    text += tmp + "\n"
    tmp = raw_input()

print text

这是可行的,但您必须再次按enter键。在

直接从剪贴板中读取或者在每一行上循环,直到收到终止符号或超时。另外,让它在Eclipse下工作很重要吗?直接执行时是否有效?在

相关问题 更多 >