计算多个集合的笛卡尔积,很多语言都没有提供直接计算笛卡尔积的方法,需要自己写很长的代码计算笛卡尔积
今天用python 实现,如下:
Python的内建模块itertools提供了非常有用的用于操作迭代对象的函数
代码:
import itertools
class cartesian(object):
def __init__(self):
self._data_list=[]
def add_data(self,data=[]):
self._data_list.append(data)
def build(self):
for item in itertools.product(*self._data_list):
print(item)
if __name__=="__main__":
car = cartesian()
car.add_data([1,2])
car.add_data([3,4])
car.add_data([5,6,7])
car.build()