Skip to content

Commit cd3e067

Browse files
vishwakftwfacebook-github-bot
authored andcommitted
Add reversed(torch.Tensor) (#9216)
Summary: Closes #3376 Pull Request resolved: #9216 Differential Revision: D8753933 Pulled By: soumith fbshipit-source-id: 5dac9b8b11ff34a205b6478db99b02fda8bd9cce
1 parent 04fce5e commit cd3e067

File tree

2 files changed

+17
-0
lines changed

2 files changed

+17
-0
lines changed

test/test_torch.py

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6361,6 +6361,16 @@ def _test_flip(self, use_cuda=False):
63616361
def test_flip(self):
63626362
self._test_flip(self, use_cuda=False)
63636363

6364+
def test_reversed(self):
6365+
val = torch.arange(0, 10)
6366+
self.assertEqual(reversed(val), torch.arange(9, -1, -1))
6367+
6368+
val = torch.arange(1, 10).view(3, 3)
6369+
self.assertEqual(reversed(val), torch.tensor([[7, 8, 9], [4, 5, 6], [1, 2, 3]]))
6370+
6371+
val = torch.tensor(42)
6372+
self.assertEqual(reversed(val), torch.tensor(42))
6373+
63646374
def test_storage(self):
63656375
v = torch.randn(3, 5)
63666376
self.assertEqual(v.storage()[0], v.data[0][0])

torch/tensor.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -231,6 +231,13 @@ def view_as(self, tensor):
231231
"""
232232
return self.view(tensor.size())
233233

234+
def __reversed__(self):
235+
r"""Reverses the tensor along dimension 0."""
236+
if self.dim() == 0:
237+
return self
238+
else:
239+
return self.flip(0)
240+
234241
def argmax(self, dim=None, keepdim=False):
235242
r"""See :func:`torch.argmax`"""
236243
return torch.argmax(self, dim, keepdim)

0 commit comments

Comments
 (0)