Второе это по факту ваш массив но перевернутый
Т.е. последнее значение списка a[-1] "пролетает". На выводе должно быть что-то похожее:
8,1,5,3, 4,6,7
или
1,5,3, 4,6,7,8
Я насчет решения. Можно добавить условие типа
if b / 10 != 0: # тоесть массив нечетный
z = b/2 # делим список пополам
result = [] # переменная для записи результата
while z >= 0: # перебор значений массива от середины до начала
result.append(a[z]) # добавление каждого значения
z -= 1
if not z: # если z вышел за пределы размера массива
z = b/2 # то мы его обнуляем
while z < b:
result.append(a[z]) # добавление всех значений после массива
z+=1
result.append(a[-1]) # добавление в конец последнее значение массива
print(result)
Код немного халтурен и прийдеться немного попрыгать с бубном , но думаю смысл я донес.