Мне нужен кто-то, кто поможет объяснить, что происходит в последней строке кода в данном решении, особенно как работает часть «result[bad]» и почему «bad.sum()» необходим в качестве аргумента< /p>
def goat_door(prizedoors, guesses):
#strategy: generate random answers, and
#keep updating until they satisfy the rule
#that they aren't a prizedoor or a guess
result = np.random.randint(0, 3, prizedoors.size)
while True:
bad = (result == prizedoors) | (result == guesses)
if not bad.any():
return result
result[bad] = np.random.randint(0, 3, bad.sum())
Насколько я понимаю, последняя строка — это способ замены переменной bad и result пустым массивом. Я импровизировал со своим собственным кодом ниже, но мне все еще нужно понять, как работает исходное решение. Буду признателен за любую помощь, спасибо!
def goat_door(prizedoors, guesses):
result = np.random.randint(0,3, prizedoors.size)
while True:
global choose_again
choose_again = np.logical_or((result == prizedoors),(result == guesses))
if not np.array(choose_again).any():
return result
choose_again = []
result = np.random.randint(0,3, prizedoors.size)
Подробнее здесь: https://stackoverflow.com/questions/792 ... -goat-door
Гарвард CS109 HW0 goat_door ⇐ Python
Программы на Python
1732809550
Anonymous
Мне нужен кто-то, кто поможет объяснить, что происходит в последней строке кода в данном решении, особенно как работает часть «result[bad]» и почему «bad.sum()» необходим в качестве аргумента< /p>
def goat_door(prizedoors, guesses):
#strategy: generate random answers, and
#keep updating until they satisfy the rule
#that they aren't a prizedoor or a guess
result = np.random.randint(0, 3, prizedoors.size)
while True:
bad = (result == prizedoors) | (result == guesses)
if not bad.any():
return result
result[bad] = np.random.randint(0, 3, bad.sum())
Насколько я понимаю, последняя строка — это способ замены переменной bad и result пустым массивом. Я импровизировал со своим собственным кодом ниже, но мне все еще нужно понять, как работает исходное решение. Буду признателен за любую помощь, спасибо!
def goat_door(prizedoors, guesses):
result = np.random.randint(0,3, prizedoors.size)
while True:
global choose_again
choose_again = np.logical_or((result == prizedoors),(result == guesses))
if not np.array(choose_again).any():
return result
choose_again = []
result = np.random.randint(0,3, prizedoors.size)
Подробнее здесь: [url]https://stackoverflow.com/questions/79234571/harvard-cs109-hw0-goat-door[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия