0
你的套任意數量的列表,例如:尋找對相交集的任意集
sets = [{1,2,3}, {3,4,5}, {5,6,7}]
你想看看在一組的任何值也是其他任何設置。什麼是最有效的方法來做到這一點?
目前,我有以下幾點:
index = 0
for set in sets:
for i in range(index + 1, len(sets)):
print set, sets[i], set & sets[i]
index += 1
導致:
set([1, 2, 3]) set([3, 4, 5]) set([3])
set([1, 2, 3]) set([5, 6, 7]) set([])
set([3, 4, 5]) set([5, 6, 7]) set([5])
如果此代碼正在工作,您應該去http://www.codereview.stackexchange.com。我們在這裏幫助您解決*糟糕的代碼。 – zondo
你希望你的輸出看起來像你的例子?我的意思是,你繼續使用的數據結構。現在你只是在印刷。 – timgeb
@timgeb我實際上是在單元測試中做這件事。而不是打印,我會'assertFalse(set&sets [i])'來證明任何集合中都沒有相交的值。我使用'print'來提供更清晰的問題。 –