如何理解torch.arange(0, 3).view(-1, *[1]*3)

如题,代码:

a = torch.arange(0, 3).view(-1, *[1]*3) 
print(a)
print(a.shape)

结果为:

tensor([[[[0]]],


        [[[1]]],


        [[[2]]]])


torch.Size([3, 1, 1, 1])

主要不理解view中的*[1] * 3。其中[1] * 3 = [1, 1, 1],前面的'*'是什么意思?求解答。