Quelques infos, release
[perso/Denise/oms.git] / faq.py
... / ...
CommitLineData
1#!/usr/bin/env python3
2# -*- coding: utf-8 -*-
3### Les fonctions et données pour la FAQ, et le changelog
4
5import csv
6
7chemin_data = "data/"
8
9fichier_FAQ = chemin_data+"FAQ_data.txt"
10fichier_changelog = chemin_data+"changelog_data.txt"
11
12
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
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):
34 """ construit deux tables : une de catégories, une de tables de (q,r)
35 categ[i] va correspondre à tableqr[i] en terme de catégorie"""
36 categ = extraire_categories(table)
37 tableqr = [ [] for i in range(len(categ)) ]
38
39 for ligne in table:
40 try:
41 cat = ligne[0]
42 (q,r) = [ligne[1],ligne[2]]
43 ind = categ.index(cat)
44 tableqr[ind].append((q,r))
45 except:
46 print("Impossible de lire la ligne : "+str(ligne))
47
48 return (categ,tableqr)