如何在python3中获得这样的输入?
第一个输入是=2,在第一个输入的基础上,我想得到2个新输入
例如:
2 # how many inputs?
1 2 # 2 numbers inputs或
3 # how many inputs?
3 5 8 # in one line getting 3 inputs下面是另一个例子:
4
6 8 7 9如何在第一个输入的基础上获得一行输入?
我试着用地图,但没有运气
n = int(input())
for i in range(n):
x = map(int,input().split())但输出是
if n is 2
1 2再次请求输入,因为i = 0获取1 2,i = 1再次请求输入。
发布于 2022-07-15 08:21:49
原因是,您正在运行一个循环n次,在每次迭代中,您将获得一整行输入。因此,在最后,x包含最新的输入行。相反,您可以读取分隔的输入空间,并将其直接存储到列表中。
n = int(input())
x = list(map(int,input().split()))虽然,如果您期望第二行包含比n数字更多的内容,则可以通过以下方法获取第一个n个数字
n = int(input())
x = list(map(int,input().split()))[:n]发布于 2022-07-15 08:18:22
如果输入是作为单独的行提供的:
n = int(input())
x = [int(input() for _ in range(n)]如果输入在一行上:
n = int(input())
x = [int(number.strip()) for number in input().split()]发布于 2022-07-15 08:54:48
你需要ANSI逃逸序列。\033[#A将光标沿#行移动。
下面是代码:
import os
n = int(input("How many inputs: "))
print()
prompt = ''
inputs = []
for _ in range(n):
os.system(r'echo "\033[2A"') # Go up 2 lines to account for \n during input
inp = int(input(prompt))
inputs.append(inp)
prompt += f'{inp} '
print('inputs =', inputs)输出:
How many inputs: 3
1 2 3
inputs = [1, 2, 3]注意到:这只能在终端中工作。
https://stackoverflow.com/questions/72991013
复制相似问题