07 Июл 2023
2 мин
2501

Перемешивание списка объектов в Python

Часто возникает ситуация, когда необходимо перемешать список объектов в Python. Примером может служить список игральных карт, которые нужно перемешать

Содержание

Часто возникает ситуация, когда необходимо перемешать список объектов в 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, но при этом нужно помнить о том, что она не возвращает перемешанный список, а изменяет исходный.

Содержание

Добавить комментарий

Определи профессию по рисунку