Я пытаюсь сравнить все элементы одного словаря, чтобы убедиться, что они находятся в секунде с правильным номером. Я новичок в Python, поэтому я знаю, что есть что-то простое, я, вероятно, отсутствует, и я работаю над этой проблемой в течение нескольких часов, поэтому мой код, вероятно, очень уродлив и не прав. Вот пример того, что у меня до сих пор.Сравнение словаря Python 3.5
try:
for key in dict_one:
if dict_two.get(key, 0) == dict_one[key]:
del dict_one[key]
if dict_one[key] < 0 :
return False
else:
return True
except KeyError:
pass
Я попытался all(dict_two.get(key,0))
, как хорошо, и это не сработало. Конечный результат должен проверить, что вы можете записать слово из dict_two
, используя слова в dict_one
True
, если вы можете, False
, если вы не можете это сделать, если dict_two
слово требует три Es, тогда dict_one
должно иметь 3 Es или вернуть false. Или два Ns, если вы были орфографическим кроликом ex dict_one = {b: 1, u: 1, n:1, y:1, x: 3}
и dict_two ={b: 1, u: 1. n: 2, y:1}
False
, потому что вам нужно 2 Ns в слове и dict_one
имеет только один.
Я могу получить dict_two
, чтобы правильно заполнить, когда я ввожу слово, и dict_one
правильно вытягивает случайные числа и количества этих чисел. И я могу заставить их правильно сравнивать письма, включенные в каждый, я просто не могу получить его для получения правильного ответа True
или False
для количества необходимых букв. Я чувствую, что я близок к ответу, но потом просто делаю это хуже, когда я пробую новые вещи и копаю свою дыру глубже.
Спасибо!
Не изменяйте объект, который вы повторяете. –
Я использовал python tutor для диаграммы и увидел, что вы имеете в виду, что он переписывал его, чтобы он никогда не проверял это. Спасибо! Я улучшаю это, но все равно новичок и делаю много ошибок. – answrseeker
Вы выполняете 'del dict_one [key]' в одной строке и в самой следующей строке, смотрите 'dict_one [key]'. Если 'dict_one' не является подклассом' defaultdict' или другим подклассом 'dict', реализующим' __missing__', это гарантирует, что вы будете бросать 'KeyError'; вы ищете то, от чего вы только что избавились. – ShadowRanger