【问题标题】:How to query an input in Python without outputting a new line (cont.)如何在 Python 中查询输入而不输出新行(续)
【发布时间】:2011-02-28 07:29:27
【问题描述】:

我已经发布了这个,但这里是确切的代码:

x1 = input("")
x2 = input("-")
x3 = input("-")
x4 = input("-")

那么,我该怎么做才能让第一个输入和下一个“-”之间没有空格?

例子:

1234-5678-9101-1121

【问题讨论】:

标签: python python-3.x


【解决方案1】:
>>> x1, x2, x3, x4 = raw_input("Input number as xxxx-xxxx-xxxx-xxxx").split('-')

如果您使用的是 Python 3.x 版,请将 rawinput 替换为 input

【讨论】:

    【解决方案2】:

    您可以使用Python read a single character from the user 中的代码逐个字符地读取标准输入(基本上是在无缓冲模式下读取,这样用户就不必输入回车就可以看到输入)。

    【讨论】:

      【解决方案3】:

      丑陋,但您可以使用terminal escape sequences 删除在每次连续调用 input() 之间由用户结束输入创建的换行符。

      适当的转义序列是<Esc>[2K 来擦除当前行,然后可能是<Esc>[nC 向前移动n 个字符,其中n 是通过检索最后一次input() 调用返回的字符串的长度来计算的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-04-04
        • 1970-01-01
        • 1970-01-01
        • 2017-12-04
        • 1970-01-01
        相关资源
        最近更新 更多