首页 > 解决方案 > 如何分隔两个输入整数?

问题描述

我在编程方面不是很老,我想输入一个数字(n)并根据它,我想输入 n 个整数,使用一个空格分隔,使用 while 循环(例如)我试过:

a = list(map(int, input().split()))

但我发现我可以输入的整数个数超过 n

非常希望能帮助我提前谢谢

标签: python-3.x

解决方案


你可以通过两种主要的简单方法来做到这一点:

  1. 接受任意输入,将其拆分并在那里获取前 n 个值和/或如果您获得不同数量的条目,则抛出错误/消息

     n = int(input("pick a number: "))
     list_number =  list(map(int, input(f"enter {n} numbers").split())) 
     if len(list_number)==n:
         print("cool")
         #do your stuff
     else:
         print("not cool")
         #do something about it
    
  2. 一次取一个数字并重复此 n 次,因为您需要指定要执行的循环数,这很容易使用range(n)它产生一系列从 0 到 n-1 的数字:

     >>> list(range(5))
     [0, 1, 2, 3, 4]
     >>>
    

    但这里相关的是我们得到了 n 个元素,例如:

     n = int(input("pick a number: "))
     list_number=[]
     for i in range(n): 
         list_number.append(int(input("enter a number: ")))
     #do your stuff
    

还要检查这个Asking the user for input 直到他们给出更详细的示例的有效响应


推荐阅读