Блин... Синтаксис у питона заморский... Что это? [::1], а это [cur:]??
В js тоже есть slice и еще splice.
[cur:]
это значит все символы начиная с позиции cur и до конца.
[::-1]
а это от начала до конца с шагом -1. Просто переворот. Более того слайсам в питоне можно изменять часть массива
Так же можно заменять и копировать массив
a = [0,1,2,3,4,5,6,7,8,9]
# вставка
a[2:2] = [-2,-2,-2,-2]
print(a) # [0, 1, -2, -2, -2, -2, 2, 3, 4, 5, 6, 7, 8, 9]
# замена
a[2:6] = [0,0,0,0]
print(a) # [0, 1, 0, 0, 0, 0, 2, 3, 4, 5, 6, 7, 8, 9]
# удаление
a[2:6] = []
print(a) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# поверхностное копирование
b= a[:]
b[0] = 'b'
a[0] = 'a'
print(a)
# ['a', 1, 2, 3, 4, 5, 6, 7, 8, 9]
print(b) # ['b', 1, 2, 3, 4, 5, 6, 7, 8, 9]
a = list(range(10))
print(a) # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
a[::2] = range(5) # замена с шагом 2 . Все элементы на четных позициях заменить на числа от 0 до 5
print(a)
# [0, 1, 1, 3, 2, 5, 3, 7, 4, 9]
Справа может быть любой итератор не обязательно массив. Фактически тут опять же поле для однострочников
a[11:16] = range(5) # в элементы с 11 по 16 занести числа от 0 до 5 (правый индекс везде не включителен)
Поэтому да советую не привыкать. Потому что после этого писать цикл или подключать библиотеку чтобы совершать банальные операции с массивом в других языках кажется полной дичью.