list1 = ["pineapple" , "apple" , "bananas" , "pear" , "pomegranate"]
list2 = ["strawberries" , "Grapefruit" , "guava" , "lemon" , "mango"]
accident = random.choice(list1)
accident1 = random.choice(list2)
вот часть, когда мне нужно вытолкнуть его ... или где-нибудь еще, мне просто нужно, чтобы два элемента были вытолкнуты после того, как они были выбраны случайным образом
print("Your cocktail is made from: ", accident, accident1)
Вы упомянули слово "поп". Почему бы не использовать это?
Пожалуйста, повторите по теме и как спросить из ознакомительного тура. «Покажи мне, как решить эту проблему с кодированием» — это не проблема переполнения стека. Мы ожидаем, что вы сделаете честную попытку, а затем зададите конкретный вопрос о своем алгоритме или технике. Stack Overflow не предназначен для замены существующей документации и руководств. Выбор без повторения хорошо задокументирован на Stack Overflow и в других местах. Проведите ожидаемое исследование и опубликуйте свой код, если у вас возникнут проблемы.
Если вы пытаетесь рандомизировать их, прежде чем выбирать снова, почему бы просто не перетасовать списки и не пройти через перетасованные списки, заархивированные вместе?
да, это для школьного проекта, я действительно новичок в этом, и я хочу использовать только такие вещи, как поп, потому что это то, что я знаю, я понимаю, что есть более простые способы сделать это с другими командами, но я пытаюсь сохранить это просто..а не просто скопировать и потом не понять
Используйте функцию remove()
для удаления элементов из списка:
In [60]: list1 = ["pineapple" , "apple" , "bananas" , "pear" , "pomegranate"]
...:
...: list2 = ["strawberries" , "Grapefruit" , "guava" , "lemon" , "mango"]
In [61]:
In [61]: import random
In [62]: acc = random.choice(list1)
In [63]: acc1 = random.choice(list2)
In [64]:
In [64]: list1.remove(acc)
In [65]: list2.remove(acc1)
In [66]:
In [66]: acc
Out[66]: 'apple'
In [67]: acc1
Out[67]: 'lemon'
In [68]: list1
Out[68]: ['pineapple', 'bananas', 'pear', 'pomegranate']
In [69]: list2
Out[69]: ['strawberries', 'Grapefruit', 'guava', 'mango']
Лучше использовать randrange
и pop
, чем choice
и remove
.
Но на самом деле обычно лучше перетасовать списки заранее, чем пытаться удалить случайные элементы из середины.
Вы можете сделать это поп, как вы упомянули. Вы можете сначала сделать индексацию и использовать pop
.
Так:
import random
list1 = ["pineapple" , "apple" , "bananas" , "pear" , "pomegranate"]
list2 = ["strawberries" , "Grapefruit" , "guava" , "lemon" , "mango"]
accident = random.choice(list1)
accident1 = random.choice(list2)
list1.pop(list1.index(accident))
list2.pop(list2.index(accident1))
print("Your cocktail is made from: ", accident, accident1)
print(list1)
print(list2)
Спасибо! именно то, что я искал .. ценю вашу помощь
Посмотрите на это: programiz.com/python-programming/methods/list/remove