changelog à jour (pour mise en prod)
[perso/Denise/oms.git] / faq.py
CommitLineData
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
5import csv
66a3e38c 6
a46e1269
DL
7chemin_data = "data/"
8
9fichier_FAQ = chemin_data+"FAQ_data.txt"
10fichier_changelog = chemin_data+"changelog_data.txt"
7aac9b2a 11from gestion_donnees import simplifie_nom
a46e1269 12
66a3e38c
DL
13
14def 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
24def 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
33def 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)