我现在在 python 中,所以我试图从pytorch 教程中理解这一行。
x_train, y_train, x_valid, y_valid = map(
torch.tensor, (x_train, y_train, x_valid, y_valid)
)
我了解 map 如何在单个元素上工作
def sqr(a):
return a * a
a = [1, 2, 3, 4]
a = map(sqr, a)
print(list(a))
在这里我需要使用list(a)
将地图对象转换回列表。
但我不明白的是,它是如何对多个变量起作用的?
如果我尝试这样做
def sqr(a):
return a * a
a = [1, 2, 3, 4]
b = [1, 3, 5, 7]
a, b = map(sqr, (a, b))
print(list(a))
print(list(b))
我收到一个错误:TypeError: can't multiply sequence by non-int of type 'list'
请为我澄清一下谢谢