Пример #1
0
	def __importData(self):
		"""Import data from Excel file and remove the old data""" 
		
		for aIdxRow in xrange(self.__sheetNutriments.nrows):
			if aIdxRow > 3 : # Pull title rows
				aTestNum = self.__sheetNutriments.cell(rowx=aIdxRow,colx=self.__valuesColsNutriments["numero"]).value
				try: # Test to avoid other titles
					int(aTestNum)
				except:
					continue
				
				aIngredient = Ingredient()
				
				# Set of each nutriment
				aIngredient.numero = self.__sheetNutriments.cell(rowx=aIdxRow,colx=self.__valuesColsNutriments["numero"]).value
				aIngredient.nom = (self.__sheetNutriments.cell(rowx=aIdxRow,colx=self.__valuesColsNutriments["nom"]).value).encode('utf-8')
				aIngredient.calories = self.__sheetNutriments.cell(rowx=aIdxRow,colx=self.__valuesColsNutriments["calories"]).value
				aIngredient.carbo = self.__sheetNutriments.cell(rowx=aIdxRow,colx=self.__valuesColsNutriments["carbo"]).value
				aIngredient.proteine = self.__sheetNutriments.cell(rowx=aIdxRow,colx=self.__valuesColsNutriments["proteine"]).value
				aIngredient.lipide = self.__sheetNutriments.cell(rowx=aIdxRow,colx=self.__valuesColsNutriments["lipide"]).value
				aIngredient.fibre = self.__sheetNutriments.cell(rowx=aIdxRow,colx=self.__valuesColsNutriments["fibre"]).value
				aIngredient.sodium = self.__sheetNutriments.cell(rowx=aIdxRow,colx=self.__valuesColsNutriments["sodium"]).value
				
				# Append to the imported data list
				self.__ingredients.append(aIngredient)
				
		for aIdxRow in xrange(self.__sheetGrease.nrows):
			if aIdxRow > 3 : # Go to the beginning
				aTestNum = self.__sheetGrease.cell(rowx=aIdxRow,colx=self.__valuesColsGrease["numero"]).value
				try:
					int(aTestNum) # Test to avoid Excel titles
				except:
					continue
				aNumSature = self.__sheetGrease.cell(rowx=aIdxRow,colx=self.__valuesColsGrease["numero"]).value
				self.__ingredients[int(aNumSature)-1].sature = self.__sheetGrease.cell(rowx=aIdxRow,colx=self.__valuesColsGrease["sature"]).value
		
		aDataFile = open(self.__dataFilePath, 'w')
		
		pickle.dump(self.__ingredients, aDataFile)
		
		aDataFile.close()