#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""Calculs sur les données d'un fichier.

Écrire une fonction 'som_col()' prenant en paramètre un nom de fichier et 
retournant une liste de sommes. 
Dans le fichier à traiter, chaque ligne contient une série de nombres séparés 
par des espaces, toutes les lignes comportent le même nombre de nombres.

La fonction fait la somme des nombres qui sont dans la même colonne.

Exemple de fichier :

    324     327.32      14332
    1432    4781        9977.24
    431.3   25013.13    786.43

Pour les tests, utiliser le fichier "data/indata_exo07_popsurf.txt".

fichier : s13.py
auteur : Bob
"""

# Définition de fonction ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
def som_col(nom):
    lst_som = None
    with open(nom, encoding="utf8") as f:
        for ligne in f:
            val_str = ligne.split()  # liste de chaînes
            val_num = []
            for s in val_str:
                val_num.append(float(s))
            if lst_som is None:
                lst_som = val_num
            else:
                for i in range(len(lst_som)):
                    lst_som[i] += val_num[i]
    return lst_som

# Programme principal ==========================================================
print(som_col("data/truc.txt"))
# print(som_col("data/indata_exo07_popsurf.txt"))
