a,b = int(i) for i in input().split()
有人能解释为什么上面的代码不起作用吗?
我知道我可以使用它来制作列表,如:
a = [int(i) for i in input().split()]
但为什么它不适用于2个值?如果运行时异常上升(传递超过2个值),则终止是完全合法的。但是显示无效的语法。
答案 0 :(得分:0)
我刚刚检查过。这些被称为生成器函数。代码可以修改为:
a,b = (int(x) for x in input().split())
此外,a,b = [int(x) for x in input().split()]
也执行相同的工作,但它会返回一个列表。然后迭代该列表并将其分配给python的末尾的变量。 (如果我错了,请纠正我)
感谢所有回答的人! :d