Я знаю, что порядок ключей не гарантируется, и это нормально, но что именно означает, что порядок значений также не гарантируется *?Матрица в качестве словаря; это безопасно?
Например, я представляю матрицу в виде словаря, например:
signatures_dict = {}
M = 3
for i in range(1, M):
row = []
for j in range(1, 5):
row.append(j)
signatures_dict[i] = row
print signatures_dict
ли столбцы моей матрицы построены правильно? Предположим, у меня есть 3 ряда и на этой линии signatures_dict[i] = row
, row
всегда будет иметь 1, 2, 3, 4, 5. Что будет signatures_dict
?
1 2 3 4 5
1 2 3 4 5
1 2 3 4 5
или что-то вроде
1 2 3 4 5
1 4 3 2 5
5 1 3 4 2
? Меня беспокоит межплатформенная поддержка.
В моем приложении строки являются словами и документами столбцов, поэтому могу ли я сказать, что первый столбец - это первый документ?
* Are order of keys() and values() in python dictionary guaranteed to be the same?
Джон благодарит за верхнюю часть. В моем приложении строки представляют собой слова и документы столбцов, поэтому могу ли я сказать, что первый столбец является первым документом? – gsamaras
@ gsamaras: Да. –
О, великий Джон, поэтому порядок ключей будет таким же, как и порядок значений. С этим я имею в виду, что 'signatureatures_dict.keys() [0]' будет извлекать первый ключ (в зависимости от того, что хранится первым), а также для 'signatures_dict.values () [0]', который выберет соответствующее значение для первого ключа , – gsamaras