Метод 1: использование функции random.sample()
import random
titles = ["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"]
random_titles = random.sample(titles, len(titles))
print(random_titles)
Метод 2. Использование функции random.shuffle()
import random
titles = ["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"]
random.shuffle(titles)
print(titles)
Метод 3: реализация алгоритма перемешивания Фишера-Йейтса
import random
titles = ["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"]
for i in range(len(titles)-1, 0, -1):
j = random.randint(0, i+1)
titles[i], titles[j] = titles[j], titles[i]
print(titles)
Метод 4. Использование функции numpy.random.shuffle()
import numpy as np
titles = ["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"]
np.random.shuffle(titles)
print(titles)
Метод 5: использование функции itertools.permutations()
import itertools
titles = ["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"]
random_titles = list(itertools.permutations(titles))
print(random_titles)
Метод 6. Создание собственной функции рандомизации
import random
def randomize_titles(titles):
randomized_titles = []
while titles:
randomized_titles.append(titles.pop(random.randint(0, len(titles)-1)))
return randomized_titles
titles = ["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"]
random_titles = randomize_titles(titles)
print(random_titles)
Метод 7. Использование функции pandas sample()
import pandas as pd
titles = pd.Series(["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"])
random_titles = titles.sample(frac=1).tolist()
print(random_titles)
Метод 8: использование функции random.choice() в цикле
import random
titles = ["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"]
random_titles = []
while titles:
random_title = random.choice(titles)
random_titles.append(random_title)
titles.remove(random_title)
print(random_titles)
Метод 9: реализация рекурсивной функции для рандомизации
import random
def randomize_titles(titles):
if len(titles) == 1:
return titles
index = random.randint(0, len(titles)-1)
return [titles[index]] + randomize_titles(titles[:index] + titles[index+1:])
titles = ["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"]
random_titles = randomize_titles(titles)
print(random_titles)
Метод 10: использование функции random.choices()
import random
titles = ["Title 1", "Title 2", "Title 3", "Title 4", "Title 5"]
random_titles = random.choices(titles, k=len(titles))
print(random_titles)