迭代器与生成器从哪里来?
同时遍历二维列表
def isvalid(self,row ,col, board,n):for i in range(n):if board[i][col]=='Q':return Falsefor i,j in zip(range(row-1,-1,-1),range(col-1,-1,-1)):if board[i][j]=='Q':return Falsefor i,j in zip(range(row-1,-1,-1),range(col+1,n)):if board[i][j]=='Q':return Falsereturn True""" zip """
accumulate
计算前缀和
import itertoolsimport operatorif __name__ == '__main__':data = [1, 2, 3, 4, 5]# 计算前缀和print(list(itertools.accumulate(data)))# 计算到当前位置累积相乘得结果data = [3, 4, 6, 2, 1, 9, 0, 7, 5, 8]print(list(itertools.accumulate(data, operator.mul, initial=2)))# 计算到当前位置的最大值并且输出print(list(itertools.accumulate(data, max)))


、
