На этом шаге мы рассмотрим различные конструкции, выполняющие указанные операции.
Метод reverse () изменяет порядок следования элементов списка на противоположный. Метод изменяет текущий список и ничего не возвращает. Пример:
>>> arr = [1, 2, 3, 4, 5] >>> arr.reverse() # Изменяется текущий список >>> arr [5, 4, 3, 2, 1]
Если необходимо изменить порядок следования и получить новый список, то следует воспользоваться функцией reversed (<Последовательность>). Функция возвращает итератор, который можно преобразовать в список с помощью функции list() или генератора списков:
>>> arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>> reversed(arr) <list_reverseiterator object at 0x00FD515Q> >>> list (reversed(arr)) # Использование функции list() [10, 9, 8, 7, 6, 5, 4, 3, 2, 1] >>> for i in reversed(arr); print (i, end=" ") # Вывод с помощью цикла 10 9 8 7 6 5 4 3 2 1 >>> [i for i in reversed(arr)] # Использование генератора списков [10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
Функция shuffle (<Список>[, <Число от 0.0 до 1.0>]) из модуля random "перемешивает" список случайным образом. Функция перемешивает сам список и ничего не возвращает.
Если второй параметр не указан, то используется значение, возвращаемое функцией random (). Пример:
>>> import random # Подключаем модуль random >>> arr = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] >>> random.shuffle(arr) # Перемешиваем список случайным образом >>> arr [2, 1, 10, 4, 6, 8, 9, 3, 1, 5]
На следующем шаге мы рассмотрим выбор элементов случайным образом.