【问题标题】:How to get N inputs from user in python [duplicate]如何在python中从用户那里获取N个输入[重复]
【发布时间】:2015-06-11 16:35:27
【问题描述】:

在我的情况下,我必须得到 N 号。根据用户输入的输入。我的意思是,

Please enter size of an array:

如果用户输入 3 或他喜欢的任何内容,那么程序应该在一行中从用户那里获取 3 个输入,例如

1 2 3

如果他输入大于 3 或他输入的程序应该警告他他给出的输入。

有什么办法吗????

我的输入是:

Enter size of an array : 5

我的输出应该是这样的:

1 2 3 4 5

最主要的是............它不应该每次都要求用户输入5个输入,并且它应该检查用户输入的号码是否正确。输入。

PS:请不要将此标记为“重复”。我搜索了很多,没有找到答案。这就是为什么在这里问。

【问题讨论】:

标签: python arrays


【解决方案1】:

您可以接受他们的输入并将其转换为int

>>> size = int(input('Enter size of array: '))
Enter size of array: 3

然后在range 函数中使用这个值来迭代多次。在列表推导中这样做,您可以以相同的方式反复请求输入。

>>> values = [int(input('Enter a value: ')) for _ in range(size)]
Enter a value: 3
Enter a value: 5
Enter a value: 7

>>> values
[3, 5, 7]

要以更循序渐进的方式执行此操作,您可以使用 for 循环

values = []
for _ in range(size):
    values.append(int(input('Enter a value: ')))

如果你只是想让他们输入一行值,不要担心会问有多少。您可以使用split() 对空格(或您传入的任何分隔符)上的字符串进行标记,然后将每个值转换为int

>>> values = [int(i) for i in input('Enter some values: ').split()]
Enter some values: 3 5 7 8
>>> values
[3, 5, 7, 8]

【讨论】:

  • 除了他想要my_input.split()[:size] 我想......但是是的
  • @CoryKramer 如果用户输入 5 作为数组的大小意味着它不应该要求用户一次又一次地输入 5 个值。
猜你喜欢
  • 1970-01-01
  • 2011-11-14
  • 1970-01-01
  • 1970-01-01
  • 2021-09-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多