# Miscellanous List Actions¶

## Reverse¶

In [33]:
a = [1,2,3,4,5]

In [34]:
help(a)

Help on list object:

class list(object)
|  list() -> new empty list
|  list(iterable) -> new list initialized from iterable's items
|
|  Methods defined here:
|
|      Return self+value.
|
|  __contains__(self, key, /)
|      Return key in self.
|
|  __delitem__(self, key, /)
|      Delete self[key].
|
|  __eq__(self, value, /)
|      Return self==value.
|
|  __ge__(self, value, /)
|      Return self>=value.
|
|  __getattribute__(self, name, /)
|      Return getattr(self, name).
|
|  __getitem__(...)
|      x.__getitem__(y) <==> x[y]
|
|  __gt__(self, value, /)
|      Return self>value.
|
|      Implement self+=value.
|
|  __imul__(self, value, /)
|      Implement self*=value.
|
|  __init__(self, /, *args, **kwargs)
|      Initialize self.  See help(type(self)) for accurate signature.
|
|  __iter__(self, /)
|      Implement iter(self).
|
|  __le__(self, value, /)
|      Return self<=value.
|
|  __len__(self, /)
|      Return len(self).
|
|  __lt__(self, value, /)
|      Return self<value.
|
|  __mul__(self, value, /)
|      Return self*value.n
|
|  __ne__(self, value, /)
|      Return self!=value.
|
|  __new__(*args, **kwargs) from builtins.type
|      Create and return a new object.  See help(type) for accurate signature.
|
|  __repr__(self, /)
|      Return repr(self).
|
|  __reversed__(...)
|      L.__reversed__() -- return a reverse iterator over the list
|
|  __rmul__(self, value, /)
|      Return self*value.
|
|  __setitem__(self, key, value, /)
|      Set self[key] to value.
|
|  __sizeof__(...)
|      L.__sizeof__() -- size of L in memory, in bytes
|
|  append(...)
|      L.append(object) -> None -- append object to end
|
|  clear(...)
|      L.clear() -> None -- remove all items from L
|
|  copy(...)
|      L.copy() -> list -- a shallow copy of L
|
|  count(...)
|      L.count(value) -> integer -- return number of occurrences of value
|
|  extend(...)
|      L.extend(iterable) -> None -- extend list by appending elements from the iterable
|
|  index(...)
|      L.index(value, [start, [stop]]) -> integer -- return first index of value.
|      Raises ValueError if the value is not present.
|
|  insert(...)
|      L.insert(index, object) -- insert object before index
|
|  pop(...)
|      L.pop([index]) -> item -- remove and return item at index (default last).
|      Raises IndexError if list is empty or index is out of range.
|
|  remove(...)
|      L.remove(value) -> None -- remove first occurrence of value.
|      Raises ValueError if the value is not present.
|
|  reverse(...)
|      L.reverse() -- reverse *IN PLACE*
|
|  sort(...)
|      L.sort(key=None, reverse=False) -> None -- stable sort *IN PLACE*
|
|  ----------------------------------------------------------------------
|  Data and other attributes defined here:
|
|  __hash__ = None


In [35]:
print(a)
a.reverse()
print(a)

[1, 2, 3, 4, 5]
[5, 4, 3, 2, 1]

In [36]:
help(reversed)

Help on class reversed in module builtins:

class reversed(object)
|  reversed(sequence) -> reverse iterator over values of the sequence
|
|  Return a reverse iterator
|
|  Methods defined here:
|
|  __getattribute__(self, name, /)
|      Return getattr(self, name).
|
|  __iter__(self, /)
|      Implement iter(self).
|
|  __length_hint__(...)
|      Private method returning an estimate of len(list(it)).
|
|  __new__(*args, **kwargs) from builtins.type
|      Create and return a new object.  See help(type) for accurate signature.
|
|  __next__(self, /)
|      Implement next(self).
|
|  __reduce__(...)
|      Return state information for pickling.
|
|  __setstate__(...)
|      Set state information for unpickling.


In [37]:
reversed(a)

Out[37]:
<list_reverseiterator at 0x104c42ac8>

## del¶

In [38]:
my_list = [34, 26, 0, 10]
name = "Barney Fife"
pi = 4.0
pie = pi

In [39]:
name

Out[39]:
'Barney Fife'
In [40]:
id(name)

Out[40]:
4374898800
In [41]:
del name

In [42]:
name

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-42-18697449d7c4> in <module>()
----> 1 name

NameError: name 'name' is not defined
In [ ]:
print(pi, pie)

In [ ]:
print(id(pi), id(pie))

In [ ]:
del pi

In [ ]:
pi

In [ ]:
pie

In [ ]:
del pie

In [ ]:
my_list

In [ ]:
my_list[1:3]

In [ ]:
del my_list[1:3]

In [ ]:
my_list

In [ ]: