Почему при таком срезе выводится последний элемент?
users_messages = ['I love my dog', 'I want to run', 'I want a hotdog', 'I want to sleep']
print(users_messages[:2:-1])
Источник: Stack Overflow на русском
users_messages = ['I love my dog', 'I want to run', 'I want a hotdog', 'I want to sleep']
print(users_messages[:2:-1])
У Вас есть элементы с индексами 0, 1, 2, 3. Шаг -1 означает проход с конца. Вот Вы и идёте с конца до второго элемента (правая граница не включается). А так как нет индексов больше 3, то и выводится только один последний элемент. Добавьте в конец списка ещё элемент, тогда напечатается два:)