Освойте Python на курсе от Skypro. Вас ждут 400 часов обучения и практики (достаточно десяти часов в неделю), подготовка проектов для портфолио, индивидуальная проверка домашних заданий и помощь опытных наставников. Получится, даже если у вас нет опыта в IT.
Часто возникает ситуация, когда необходимо перемешать список объектов в Python. Примером может служить список игральных карт, которые нужно перемешать перед началом игры.
В Python для этого есть встроенная функция random.shuffle()
. Эта функция принимает список в качестве аргумента и перемешивает его «на месте», то есть изменяет исходный список, вместо создания нового.
Пример использования функции random.shuffle()
:
import random a = [1, 2, 3, 4, 5] random.shuffle(a) print(a)
Однако при использовании функции random.shuffle()
возникает особенность, которую нужно знать. Эта функция не возвращает новый перемешанный список, а возвращает None
. Это означает, что нельзя присваивать результат функции переменной и ожидать, что в этой переменной будет перемешанный список.
Отсюда следует, что неверно будет такое использование функции:
import random a = [1, 2, 3, 4, 5] b = random.shuffle(a) print(b)
В данном случае переменная b
будет равна None
, так как функция random.shuffle()
ничего не возвращает. Правильно будет сначала перемешать список с помощью random.shuffle()
, а затем уже работать с этим списком:
import random a = [1, 2, 3, 4, 5] random.shuffle(a) print(a)
Таким образом, функция random.shuffle()
позволяет удобно и быстро перемешать список объектов в Python, но при этом нужно помнить о том, что она не возвращает перемешанный список, а изменяет исходный.
Изучайте Python на онлайн-курсе от Skypro «Python-разработчик». Программа рассчитана на новичков без опыта программирования и технического образования. Курс проходит в формате записанных коротких видеолекций. Будет много проверочных заданий и мастер-классов. В конце каждой недели — живая встреча с экспертами в разработке для ответов на вопросы и разбора домашек.
Добавить комментарий