#!/usr/bin/python3
# ===================================================================
# reverse a list
# ===================================================================
#
# other ways:
#
# a. list reverse object method (initial list is modified,
# no new list created)
# lst.reverse()
#
# b. list slicing (original list is not modified, new list created)
# x = lst.[::-1]
#
# c. use iterator (iterator returned by "reversed")
# x = list(reversed(lst))
#
# ===================================================================
# -------------------------------------------------------------------
# ---- reverse list
# -------------------------------------------------------------------
def reverse_list(lst):
i = 0
j = len(lst) - 1
if j < 2:
return lst
while i != j:
##print(f'loop: {lst}')
lst[i],lst[j] = lst[j],lst[i]
i += 1
j -= 1
return lst
# -------------------------------------------------------------------
# ---- main
# -------------------------------------------------------------------
pi = 3.14159
lst = [0,1,2,'a',4,'z',6,10.02,8,9,pi]
print(lst)
reverse_list(lst)
print(lst)
print(type(lst[0]))
print(id(lst[0]))