我不明白Python從持有集合中應用的順序。例如:集合中元素的python順序
visited = set()
visited.add('C')
visited.add('A')
visited.add('B')
print(set)
排序是'A', 'C', 'B'
。爲什麼'A'在'C'之前(可能按字母順序排列)? 爲了保持添加順序,我需要做什麼,即'C', 'A', 'B'
?
我不明白Python從持有集合中應用的順序。例如:集合中元素的python順序
visited = set()
visited.add('C')
visited.add('A')
visited.add('B')
print(set)
排序是'A', 'C', 'B'
。爲什麼'A'在'C'之前(可能按字母順序排列)? 爲了保持添加順序,我需要做什麼,即'C', 'A', 'B'
?
集合與列表不同。如果您想保留訂單,請使用列表。 例如:
a = []
a.append('C')
a.append('A')
a.append('B')
print a # ['C', 'A', 'B']
但現在你可以在列表中放置一個元素兩次(這是不可能的) – 2014-10-17 08:36:44
https://docs.python.org/2/library/stdtypes.html#set-types-set-frozenset「集合對象是不同可哈希對象的無序集合。」 – fredtantini 2014-10-17 08:30:36
可能重複http://stackoverflow.com/questions/1653970/does-python-have-an-ordered-set – Kasramvd 2014-10-17 08:32:24
Set是一個無序的集合。 – 2014-10-17 08:33:21