在Python中找到换行符之前,如何读取用户输入?

在Python中找到换行符之前,如何读取用户输入?,python,user-input,Python,User Input,我想从用户那个里获取未知的正整数和负整数。当用户按下Enter键时,输入将停止 比如说- 如果用户输入12345-9-101000-输入键-则它将存储“12345-9-101000” 这是我的密码- a = [] inp = input() while inp != "\n": a.append(inp) inp = input() print(a) 但这并不是说即使按下回车键也要停止输入 编辑-要求进行输入的问题,直到输入为空,但我的问题是在一行中进行

我想从用户那个里获取未知的正整数和负整数。当用户按下Enter键时,输入将停止

比如说- 如果用户输入
12345-9-101000-输入键-

则它将存储
“12345-9-101000”

这是我的密码-

a = []
inp = input()

while inp != "\n":
    a.append(inp)
    inp = input()

print(a)
但这并不是说即使按下回车键也要停止输入

编辑-要求进行输入的问题,直到输入为空,但我的问题是在一行中进行输入,直到用户按Enter按钮。

只需将其更改为

while inp:
    a.append(inp)
    inp = input()

当输入换行符时,
inp
是一个空字符串,这将打破循环。

如果您使用的是Python 3.8,您可以在这里使用walrus操作符

ls = []

while (inp := input("> ")):
    ls.append(inp)

print(ls)

这回答了你的问题吗?“我的问题是在用户按下Enter按钮之前将输入记录在一行中。”这就是
input()
函数的工作原理。你不需要任何循环。一旦你有了输入,
split()
在空白处打开它以获得实际输入的列表,但我不知道用户要输入多少数字。输入的数量可能不同。请尝试
打印(“12345-9-101000”.split())
并亲自查看。运行此代码:
x=input('给我一些数字:')
。看看它是如何工作的。尝试输入2个数字。然后尝试输入10。这两种情况都有效吗?
x
的值是多少
inp
不会变成
None
。总是返回一个字符串(如果它没有抛出异常),因此
inp
将是一个空字符串。@AbhinavMathur根据他们对另一个答案的评论判断,OP还希望将其附加到列表中。IDK为什么他们没有想到只在代码中添加一行
.append()
,而是声称它不起作用:-/@PranavHosangadi I添加了append语句,那么缺少什么?@AbhinavMathur“那么缺少什么”什么都没有!这是我的观点。即使在添加追加之前,也没有“缺少”任何内容,因为1。OP没有指定要将它们附加到列表中,2。这是一件很容易识别和添加的事情anyway@PranavHosangadi“已接受”答案仅适用于特定版本的python:/