On 2016-03-03 23:08, John Gordon wrote:
In <8b3d06eb-0027-4396-bdf8-fee0cc9ff...@googlegroups.com> vlyamt...@gmail.com
writes:
i have list of strings "data" and i am trying to build reverse list data1
data1 = []
for i in range(len(data)):
j = len(data) - i
data1.append(data[j])
but i have the following error:
data1.append(data[j])
IndexError: list index out of range
am i doing it wrong?
Thanks
Python lists are zero-indexed, meaning a list of five items will have
indexes 0 to 4.
The first time through your loop, i is 0, so
j = len(data) - i
evaluates to
j = len(data)
which would yield 5 for a five-element list, but the last actual element
is in data[4].
A simpler alternative is to use 'reversed':
data1 = list(reversed(data))
--
https://mail.python.org/mailman/listinfo/python-list