3
是什麼做的清潔方法如下:遍歷一組/遺蹟Python的方式設置
def foo(aSet) :
for a in aSet:
for remaining in aSet - {a} :
doSomething(a,remaining)
我想必須有書面證明爲只是一個for循環的一些方法?
是什麼做的清潔方法如下:遍歷一組/遺蹟Python的方式設置
def foo(aSet) :
for a in aSet:
for remaining in aSet - {a} :
doSomething(a,remaining)
我想必須有書面證明爲只是一個for循環的一些方法?
aSet = {1,2,3}
[[i,j] for i in aSet for j in aSet if j != i]
#=> [[1, 2], [1, 3], [2, 1], [2, 3], [3, 1], [3, 2]]
在你的情況,你需要一臺發電機
變量名需要更換,以類似的東西實際值的(doSomething(i, j) for i in aSet for j in aSet if j != i)
>>> from itertools import permutations
>>> aSet = {1, 2, 3}
>>> list(permutations(aSet, 2))
[(1, 2), (1, 3), (2, 1), (2, 3), (3, 1), (3, 2)]
>>> for a, remaining in permutations(aSet, 2):
... print(a, remaining, end=', ')
...
1 2, 1 3, 2 1, 2 3, 3 1, 3 2,
總之,你的代碼似乎什麼它做比較清楚的。對功能的評論也不會受到影響。 –