import customers as c import products as p import mock as m import run names = [] def addCustomers(nameList): global names names = nameList for i in range(0, len(names)): c.Customer(names[i]) c.customersMap[names[i]] = i def dataBuilder(matrix): for i in range(0, len(matrix)): for j in range(0,len(matrix[i])): num = matrix[i][j] while num > 0: c.customers[i].purchaseItem(p.products[j]) num -= 1 def init(nameList, productList, matrix): if isinstance(productList, int): products = m.mockProducts(productList) p.addProducts(products) if isinstance(nameList, int): nameList = m.mockCustomers(nameList) addCustomers(nameList) if isinstance(matrix, list): '''expected data: list of customers, list of products, list customer arrays containing product purchases in same order as product list.''' dataBuilder(matrix); else: m.mockDataBuilder(names, products) c.matrixBuilder() recommend = run.run(names, matrix) while recommend == 'again': recommend = run.run(names, matrix) return recommend