【问题标题】:How to include a newline in the python raw_input() function?如何在 python raw_input() 函数中包含换行符?
【发布时间】:2012-05-01 13:24:01
【问题描述】:

我使用raw_input() 将消息存储在变量中。所以我不能按回车键/新行来开始一个新段落。现在,如果我按 Enter 键,它将继续执行我的程序的下一部分。

我已经尝试过这样的事情:

>>> message = raw_input("Message: ")
Message: Hello Sir, \n It's great that..
>>> message
"Hello Sir, \\n It's great that.."
>>> 

没用,我也试过用单引号和双引号括起来,也没用。

我知道还有其他方法可以做到这一点,例如使用 wxpythontkinter,但我想严格控制它。这可能吗?

【问题讨论】:

    标签: python console-application


    【解决方案1】:

    你可以使用sys 模块吗?如果您愿意,这将起到作用。只需按 Ctrl-D 即可结束它。

    import sys
    message = sys.stdin.readlines()
    

    否则,这回答了你的问题:Python raw_input ignore newline

    【讨论】:

    • sys.stdin.readlines() 就像一个魅力,但我似乎无法让 ctrl-d 工作我不知道为什么?
    • 我想通了,我必须改用 ctrl-c,但现在如果我尝试打印消息,我会收到键盘中断错误。
    • 我终于想通了!我不能使用 ctrl-c,这就是造成键盘中断错误的原因,而且我不能使用 ctrl-d,因为我在 Windows 上,我必须使用 ctrl-z 或 f6,然后它将显示在控制台中像这样 ^Z 并按回车键。之后我必须将消息从列表转换回字符串,我设法这样做 >>>roughmessage = sys.stdin.readlines() >>>message = ''.join(roughmessage)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-23
    • 2012-06-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多