首页 > 解决方案 > 如何有效地使用 input().split() 在一行中从用户那里获取至少 2 个输入?

问题描述

我正在阅读一篇关于 python 的文章,我看到了input().split()。我认为,我可以从用户那里获取多个输入,我编写了这段代码。

a,b = input("Enter your number").split()
print(a,b)

但是我很困惑,因为每当我尝试运行此代码时,都会出现此错误:

not enough values to unpack (expected 2, got 1)

那么,我怎样才能接受多个输入,或者我可以吗?

标签: python

解决方案


在您的示例中,您可能只在该行中键入了一个数字,并且由于您期望 2(a 和 b)而引发了错误

您应该在同一行输入两个数字,然后输入。

您可以更改代码以接受任意数量的数字,并将它们存储在列表中:

res = input("Enter your numbers:").split()
print(*res)   ## prints the list content
for r in res: ## prints number one by one and one per line
    print(r)

结果:

Enter your numbers: 12 13 14
12 13 14
12
13
14

推荐阅读