Найти - Пользователи
Полная версия: Рандомно получить список из файла
Начало » Python для новичков » Рандомно получить список из файла
1
casiy
Есть txt файл такого содержания
x =  ['python', 'c++', 'JavaScript', 'c#', 'Pascal', 'bash', 'shell', 'AutoIt']
y =  ['windows', 'ubuntu', 'mac', 'android', 'vista', 'xp', 'win2000']
z =  ['fara', 'rama', 'goga', 'google', 'zaza', 'faza', 'dura', 'puma']
и т.д. (списков много)

Надо рандомно выбрать одну из переменных, из него тоже выбрать рандомно 4 слова, чтобы не повторялись между собой, и первое слово должно быть как в начале списка. При выборе переменной чтобы тоже не было повторений.
Подскажите как решить задачу?
JOHN_16
есть модуль random, там есть все необходимые функции. Например shuffle перемешает передаваемую последовательность случайным образом. Смотрите документацию, думаю все прояснится
koward
Как один из вариантов для тебя
import random
x =  ['python', 'c++', 'JavaScript', 'c#', 'Pascal', 'bash', 'shell', 'AutoIt']
y =  ['windows', 'ubuntu', 'mac', 'android', 'vista', 'xp', 'win2000']
z =  ['fara', 'rama', 'goga', 'google', 'zaza', 'faza', 'dura', 'puma']
all_data = [x, y, z]
random.shuffle(all_data)
for l in all_data:
	first_element, data = l[0], l[1:]
	random.shuffle(data)
	data1 = list(set(data))[:3]
	data1.insert(0, first_element)
	print(data1)
casiy
Вот немножко переделал ответ koward и огромное ему спасибо
import random
x =  ['python', 'c++', 'JavaScript', 'c#', 'Pascal', 'bash', 'shell', 'AutoIt']
y =  ['windows', 'ubuntu', 'mac', 'android', 'vista', 'xp', 'win2000']
z =  ['fara', 'rama', 'goga', 'google', 'zaza', 'faza', 'dura', 'puma']
all_data = [x, y, z]
for i in random.sample(all_data, 1):
    data = i[0]
    data1 = i[1:]
    q = random.sample(data1, 3)
    print(data + '\n' + '\n'.join(q))

Это конечно все то как я хотел ,но все же, всем спасибо за ответы.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB