def init(fileName): # # Ouverture du fichier source. # # D'après la documentation, le mode ''b'' est # *obligatoire* sur les plate-formes où il est # significatif. Dans la pratique, il est conseillé # de toujours le mettre. # file = open(fileName, "rb") try: # # Création du ''lecteur'' CSV. # reader = csv.reader(file) # # Le ''lecteur'' est itérable, et peut être utilisé # dans une boucle ''for'' pour extraire les # lignes une par une. # print "Fetching " + fileName + "..." ligne = [] i = 0 # (row[6]+" "+row[7]) for row in reader: if i > 0: formattedRow = lineReading(row, [1,0,7,4,2,10,9]) if formattedRow != []: ligne = ligne + formattedRow i = i + 1 # élimination des doublons liste = list(set(ligne)) i = InstallationsModel() i.createAll(liste) finally: # # Fermeture du fichier source # file.close()
def test_lineReading(self): self.assertEquals(lineReading([], [0,2]), ()) self.assertEquals(lineReading([1,2,3], []), ()) self.assertEquals(lineReading([1,2,3], [2]), [(3,)]) self.assertEquals(lineReading([1,2,3], [1,2]), [(2,3,)]) self.assertEquals(lineReading([1,2,3], [0,1,2]), [(1,2,3,)])