1
def cross(A, B):
"Cross product of elements in A and elements in B."
return [a+b for a in A for b in B]
digits = '123456789'
rows = 'ABCDEFGHI'
cols = digits
squares = cross(rows, cols)
unitlist = ([cross(rows, c) for c in cols] +
[cross(r, cols) for r in rows] +
[cross(rs, cs) for rs in ('ABC','DEF','GHI') for cs in ('123','456','789')])
units = dict((s, [u for u in unitlist if s in u])
for s in squares)
peers = dict((s, set(sum(units[s],[]))-set([s]))
for s in squares)
有人請幫我理解(簡單來說)最後兩行是什麼意思?瞭解程序
謝謝,我得到的第一線,但關於第二個是什麼? – awsomeguy 2013-03-01 18:46:17
@LewisC:閱讀關於Python [sets](http://docs.python.org/2/library/stdtypes.html#set)和內置和 – Abhijit 2013-03-01 18:48:35