如何在不输出新行的情况下在Python中查询输入

时间:2010-06-06 03:04:22

标签: python input python-3.x newline

标题几乎描述了这个问题。

2 个答案:

答案 0 :(得分:3)

执行查询的input函数不会发出换行符:

>>> input('tell me: ')
tell me: what?
'what?'
>>> 

如您所见,输出的提示没有任何换行符,用户输入的内容与提示符出现在同一行。当然,用户也在输入换行符,并且(就像用户输入的其他内容一样), 换行符(因此后续行的结果如下)。这是你的问题吗?

如果是这样,那么您需要切换到特定于平台的方法,例如几乎任何除Windows之外的计算机上的curses和Windows上的msvcrt(或者,您可以查找{{} 1}} Windows上的端口,但我不知道是否有一个用于Python 3)。这两个模块是非常不同的,你没有澄清你的平台(或你的确切需求 - 我以前的段落是一个有根据的猜测尝试;-),所以我只是等你澄清需求和平台而不是而不是发表可能不会有用的长篇论文。

答案 1 :(得分:1)

如果使用raw_input,则不会自动插入新行。

>>> name = raw_input ("What...is your name? ") 
What...is your name? Arthur, King of the Britons!