示例输入1:
1 10
100 200
201 210
900 1000
示例输入2:
4 49
2 59
所以我不知道输入的行数是多少,我想将输入组织成一个二维数组。这些行一次全部提交(没有多个input()
)。
编辑: 对不起我对I / O很糟糕。这就是我想要的:
nums = []
for i in range(0,endofinput):
nums.append(list(map(int, input().split())))
print(nums)
问题是,我不知道会有多少输入。我无法控制输入,所以我不能只做一个while循环来检测下一个输入是“”。有没有办法知道我会得到多少输入线?
答案 0 :(得分:1)
您对输入的格式有多少控制? (它是来自一些外部自动化系统吗?来自用户?来自另一个脚本?)
假设您有一些控制措施,您可以实现一个标记值,例如空行,以检测输入的结束。然后
l = []
data = input(':')
while data:
l.append(list(map(int, data.split())))
将以空格分隔的整数行读取为整数列表,直到它读取空行。
答案 1 :(得分:1)
通常,from django.http import HttpResponse, HttpResponseForbidden
def a_view(request):
last_post_value = request.session.get('value')
current_post_value = request.POST.get('value')
if last_post_value > current_post_value:
return HttpResponseForbidden()
request.session['value'] = current_post_value
return HttpResponse()
仅接受单行。我知道传递多行的唯一方法是粘贴复制的文本块。该程序处理这些行,就好像它们已经逐个输入一样。告诉程序已达到输入结束的唯一方法是输入一些停止代码或更时尚,按Ctrl-D,即经典的End-Of-File标记。
input()
粘贴四行后按[Enter]和[Ctrl-D]:
的结果print("Enter multiple lines, press Ctrl-D after last line:")
Array=[]
while True:
try:
Array.append([int(a) for a in input().split(" ")])
except EOFError:
print(len(Array),"lines of data have been received.")
break