У меня есть словарь с, скажем, n строками, в которых в каждой строке у меня есть набор значений и кортежей в качестве ключей. Примерно так:
a = {(-1,2):40, (4,5):10, (-6,1):20, (2,-3):30, ...}
теперь, скажем, у меня есть другой словарь, подобный этому:
b = {(4,5):10, (-6,1):20, (-1,2):40, (2,-3):30, ...}
, поэтому в основном b
равно a
, но порядок элементов не тот же , Проблема в том, что я не смог придумать хороший способ проверить это. Я не могу использовать наборы в качестве ключей и быстро подтвердить a == b
, а если я поставлю кортежи в качестве ключей, то a == b is false
, поскольку порядок зашифрован. Я попробовал tuple(set())
их, тоже не сработало. Так что я думал о том, чтобы сохранить ключи как tuple(set())
, вроде как «развязать» их на промежуточном этапе, проверить и вернуть их обратно. Я не думаю, что распаковка здесь помогает, так как я не хочу смешивать то, что находится внутри кортежей, например (4,5, -6,1, ...) , что я в конечном итоге хочу сделать, это посмотреть, есть ли у меня уже эта комбинация кортежей в моем словаре, независимо от того, как упорядочены элементы.
Дайте мне знать, если я не могу прояснить ситуацию, я новичок в программировании, так что да, спасибо.