]>
Commit | Line | Data |
---|---|---|
66a3e38c DL |
1 | #!/usr/bin/env python3 |
2 | # -*- coding: utf-8 -*- | |
a46e1269 | 3 | ### Les fonctions et données pour la FAQ, et le changelog |
66a3e38c DL |
4 | |
5 | import csv | |
66a3e38c | 6 | |
a46e1269 DL |
7 | chemin_data = "data/" |
8 | ||
9 | fichier_FAQ = chemin_data+"FAQ_data.txt" | |
10 | fichier_changelog = chemin_data+"changelog_data.txt" | |
7aac9b2a | 11 | from gestion_donnees import simplifie_nom |
a46e1269 | 12 | |
66a3e38c DL |
13 | |
14 | def lire_fichier_csv_simple(fichier): | |
15 | """ lire un fichier csv et le renvoyer en table""" | |
16 | table=[] | |
17 | with open(fichier, "r") as fichier_csv: | |
18 | reader_notes = csv.reader(fichier_csv,delimiter=",",dialect="unix") | |
19 | for ligne in reader_notes: | |
20 | if ligne != []: | |
21 | table.append(ligne) | |
22 | return table | |
23 | ||
66a3e38c DL |
24 | def extraire_categories(table): |
25 | """ extrait les catégories (1ere colonne du tableau de tableau) | |
26 | renvoie sous forme de liste""" | |
27 | liste_cat = [] | |
28 | for ligne in table: | |
29 | if not (ligne[0] in liste_cat): | |
30 | liste_cat.append(ligne[0]) | |
31 | return liste_cat | |
32 | ||
33 | def extraire_tables_par_cat(table): | |
7aac9b2a D |
34 | """ construit trois tables : une de catégories, une de tables de (q,r), une de catégories simplifées |
35 | categ[i] et categsimple[i] vont correspondre à tableqr[i] en terme de catégorie""" | |
66a3e38c | 36 | categ = extraire_categories(table) |
7aac9b2a | 37 | categsimple = [ simplifie_nom(cat) for cat in categ ] |
66a3e38c DL |
38 | tableqr = [ [] for i in range(len(categ)) ] |
39 | ||
40 | for ligne in table: | |
41 | try: | |
42 | cat = ligne[0] | |
43 | (q,r) = [ligne[1],ligne[2]] | |
44 | ind = categ.index(cat) | |
45 | tableqr[ind].append((q,r)) | |
46 | except: | |
47 | print("Impossible de lire la ligne : "+str(ligne)) | |
48 | ||
7aac9b2a | 49 | return (categ, categsimple, tableqr) |