#!/usr/bin/python3
# -*- coding: utf-8 -*-
########################################################################
#
# This file is part of python module <pyspc>.
# Copyright (C) 2013-2021 R. Marty
# (renaud.marty@developpement-durable.gouv.fr)
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program (see COPYING.txt).
# If not, see <http://www.gnu.org/licenses/>.
#
########################################################################
"""
Données d'observation et de prévision - Hydro2 - Données
"""
from pyspc.convention.hydro2 import (
DATATYPES, LINECONTENTS, SEP, LINESTOSKIP, PAIRVALUES
)
def _process_907(x, sm):
"""Traiter la ligne 907."""
d = {}
for i in range(12):
m = sm + i
if m > 12:
m -= 12
d[f'QMM_{m:02d}'] = x[11 + i]
return d
def _process_908(x, sm, y):
"""Traiter la ligne 908."""
d = {}
d[f'{y:04d}_AA'] = x[6]
for i in range(12):
m = sm + i
y2 = y
if m > 12:
m -= 12
y2 += 1
d[f'{y2:04d}_{m:02d}'] = x[8 + i]
return d
[docs]
class Hydro2():
"""
Structure de données HYDRO-2.
Attributes
----------
filename : str
Nom du fichier Hydro2
"""
[docs]
def __init__(self, filename=None):
"""
Initialisation de l'instance de la classe Hydro2.
Parameters
----------
filename : str
Nom du fichier Hydro2
"""
self.filename = filename
def __str__(self):
"""Afficher les méta-données de l'instance Hydro2."""
text = """
*************************************
******** HYDRO2 - Data **************
*************************************
* NOM FICHIER = {filename}
*************************************
"""
return text.format(filename=self.filename)
[docs]
def read(self):
"""
Lecture du fichier d'export de données HYDRO-2.
Returns
-------
info : dict
Dictionnaire des informations par station:
- clé : station
- valeur : dictionnaire des données de la station
Examples
--------
>>> from pyspc.data.hydro2 import Hydro2
Cas avec un fichier QTVAR
>>> f = 'data/data/hydro2/qtvar.txt'
>>> d = 'QTVAR'
>>> reader = Hydro2(filename=f, datatype=d)
>>> content = reader.read()
>>> content
{
'K1251810': {
'20200305 12:00': '24.100', '20200305 16:10': '37.400',
'20200305 17:00': '39.900', '20200305 17:30': '41.900',
'20200305 18:40': '45.400', '20200305 19:20': '46.600',
'20200305 21:00': '50.200', '20200305 22:21': '52.300',
'20200305 23:00': '54.200', '20200306 00:20': '59.700',
'20200306 01:01': '63.800', '20200306 01:10': '65.300',
'20200306 01:50': '69.700', '20200306 02:20': '75.300',
'20200306 04:10': '96.200', '20200306 04:40': '107.000',
'20200306 05:00': '114.000', '20200306 06:20': '122.000',
'20200306 07:50': '117.000', '20200306 10:50': '107.000',
'20200306 12:30': '101.000', '20200306 13:20': '99.100',
'20200306 16:10': '89.600', '20200306 18:50': '84.900',
'20200306 21:20': '78.700', '20200307 01:10': '69.400',
'20200307 03:22': '63.800', '20200307 04:50': '58.700',
'20200307 06:20': '55.600', '20200307 08:00': '50.400',
'20200307 10:30': '46.000', '20200307 12:00': '44.000',
'area': '776.000',
'datatype': 'QTVAR',
'end': '20200307 12:00',
'name': "L'Arroux à Dracy-Saint-Loup [Surmoulin]",
'provider': 'DREAL Bourgogne',
'start': '20200305 12:00',
'station': 'K1251810',
'units': 'm3/s',
'z0': '291.000'},
'K1321810': {
'20200305 12:00': '120.000', '20200305 13:22': '136.000',
'20200305 16:25': '168.000', '20200305 16:45': '170.000',
'20200305 17:20': '175.000', '20200305 19:10': '180.000',
'20200305 22:35': '186.000', '20200305 23:00': '192.000',
'20200305 23:45': '196.000', '20200306 00:30': '202.000',
'20200306 01:20': '205.000', '20200306 02:20': '209.000',
'20200306 06:10': '209.000', '20200306 08:05': '208.000',
'20200306 09:45': '210.000', '20200306 11:05': '214.000',
'20200306 11:55': '220.000', '20200306 12:15': '225.000',
'20200306 13:40': '238.000', '20200306 14:00': '242.000',
'20200306 15:15': '252.000', '20200306 15:40': '254.000',
'20200306 16:20': '255.000', '20200306 17:55': '252.000',
'20200306 19:00': '247.000', '20200306 19:55': '244.000',
'20200306 20:40': '241.000', '20200306 21:30': '235.000',
'20200306 21:40': '233.000', '20200306 22:00': '228.000',
'20200306 23:05': '222.000', '20200307 00:10': '215.000',
'20200307 00:45': '208.000', '20200307 01:25': '204.000',
'20200307 03:15': '196.000', '20200307 04:20': '190.000',
'20200307 04:50': '184.000', '20200307 05:25': '181.000',
'20200307 06:20': '178.000', '20200307 08:45': '172.000',
'20200307 12:00': '160.000',
'area': '1800.000',
'datatype': 'QTVAR',
'end': '20200307 12:00',
'name': "L'Arroux à Étang-sur-Arroux [Pont du Tacot]",
'provider': 'DREAL Centre',
'start': '20200305 12:00',
'station': 'K1321810',
'units': 'm3/s',
'z0': '273.000'},
'K1341810': {
'20200305 12:00': '87.400', '20200305 13:00': '90.600',
'20200305 16:00': '107.000', '20200305 17:35': '117.000',
'20200305 18:20': '121.000', '20200305 18:50': '124.000',
'20200305 21:55': '139.000', '20200305 23:25': '146.000',
'20200306 00:10': '151.000', '20200306 00:22': '151.000',
'20200306 01:45': '160.000', '20200306 03:20': '170.000',
'20200306 10:30': '205.000', '20200306 13:00': '213.000',
'20200306 14:05': '217.000', '20200306 15:20': '219.000',
'20200306 16:00': '220.000', '20200306 16:20': '219.000',
'20200306 16:50': '220.000', '20200306 17:45': '220.000',
'20200306 18:25': '221.000', '20200306 19:10': '221.000',
'20200306 22:00': '219.000', '20200306 22:15': '220.000',
'20200306 23:35': '219.000', '20200307 06:15': '243.000',
'20200307 07:10': '244.000', '20200307 08:05': '244.000',
'20200307 11:20': '238.000', '20200307 12:00': '236.000',
'area': '2280.000',
'datatype': 'QTVAR',
'end': '20200307 12:00',
'name': "L'Arroux à Rigny-sur-Arroux",
'provider': 'DREAL Centre',
'start': '20200305 12:00',
'station': 'K1341810',
'units': 'm3/s',
'z0': '237.000'}
}
Cas avec un fichier QTFIX
>>> f = 'data/data/hydro2/qtfix.txt'
>>> d = 'QTFIX'
>>> reader = Hydro2(filename=f, datatype=d)
>>> content = reader.read()
>>> content
{
'K1251810': {
'20200305 12:00': '25.700', '20200305 13:00': '29.000',
'20200305 14:00': '32.200', '20200305 15:00': '35.300',
'20200305 16:00': '38.400', '20200305 17:00': '41.800',
'20200305 18:00': '44.800', '20200305 19:00': '47.000',
'20200305 20:00': '49.100', '20200305 21:00': '50.900',
'20200305 22:00': '52.800', '20200305 23:00': '56.000',
'20200306 00:00': '60.700', '20200306 01:00': '67.500',
'20200306 02:00': '76.600', '20200306 03:00': '88.200',
'20200306 04:00': '104.000', '20200306 05:00': '118.000',
'20200306 06:00': '121.000', '20200306 07:00': '119.000',
'20200306 08:00': '116.000', '20200306 09:00': '112.000',
'20200306 10:00': '108.000', '20200306 11:00': '105.000',
'20200306 12:00': '101.000', '20200306 13:00': '97.900',
'20200306 14:00': '94.600', '20200306 15:00': '92.000',
'20200306 16:00': '89.300', '20200306 17:00': '87.000',
'20200306 18:00': '85.000', '20200306 19:00': '82.900',
'20200306 20:00': '81.000', '20200306 21:00': '78.700',
'20200306 22:00': '76.300', '20200306 23:00': '74.000',
'20200307 00:00': '71.500', '20200307 01:00': '68.700',
'20200307 02:00': '66.000', '20200307 03:00': '63.300',
'20200307 04:00': '60.000', '20200307 05:00': '56.900',
'20200307 06:00': '54.400', '20200307 07:00': '51.800',
'20200307 08:00': '49.800', '20200307 09:00': '47.900',
'20200307 10:00': '46.100', '20200307 11:00': '44.500',
'area': '776.000',
'datatype': 'QTFIX',
'end': '20200307 12:00',
'name': "L'Arroux à Dracy-Saint-Loup [Surmoulin]",
'provider': 'DREAL Bourgogne',
'start': '20200305 12:00',
'station': 'K1251810',
'units': 'm3/s',
'z0': '291.000'},
'K1321810': {
'20200305 12:00': '126.000', '20200305 13:00': '137.000',
'20200305 14:00': '148.000', '20200305 15:00': '159.000',
'20200305 16:00': '168.000', '20200305 17:00': '176.000',
'20200305 18:00': '179.000', '20200305 19:00': '180.000',
'20200305 20:00': '181.000', '20200305 21:00': '183.000',
'20200305 22:00': '187.000', '20200305 23:00': '195.000',
'20200306 00:00': '201.000', '20200306 01:00': '205.000',
'20200306 02:00': '208.000', '20200306 03:00': '208.000',
'20200306 04:00': '207.000', '20200306 05:00': '207.000',
'20200306 06:00': '206.000', '20200306 07:00': '207.000',
'20200306 08:00': '206.000', '20200306 09:00': '208.000',
'20200306 10:00': '211.000', '20200306 11:00': '216.000',
'20200306 12:00': '226.000', '20200306 13:00': '237.000',
'20200306 14:00': '244.000', '20200306 15:00': '253.000',
'20200306 16:00': '254.000', '20200306 17:00': '252.000',
'20200306 18:00': '250.000', '20200306 19:00': '244.000',
'20200306 20:00': '240.000', '20200306 21:00': '233.000',
'20200306 22:00': '226.000', '20200306 23:00': '221.000',
'20200307 00:00': '213.000', '20200307 01:00': '205.000',
'20200307 02:00': '200.000', '20200307 03:00': '193.000',
'20200307 04:00': '187.000', '20200307 05:00': '181.000',
'20200307 06:00': '178.000', '20200307 07:00': '176.000',
'20200307 08:00': '173.000', '20200307 09:00': '169.000',
'20200307 10:00': '165.000', '20200307 11:00': '161.000',
'area': '1800.000',
'datatype': 'QTFIX',
'end': '20200307 12:00',
'name': "L'Arroux à Étang-sur-Arroux [Pont du Tacot]",
'provider': 'DREAL Centre',
'start': '20200305 12:00',
'station': 'K1321810',
'units': 'm3/s',
'z0': '273.000'},
'K1341810': {
'20200305 12:00': '88.900', '20200305 13:00': '93.200',
'20200305 14:00': '98.600', '20200305 15:00': '104.000',
'20200305 16:00': '110.000', '20200305 17:00': '116.000',
'20200305 18:00': '122.000', '20200305 19:00': '127.000',
'20200305 20:00': '132.000', '20200305 21:00': '137.000',
'20200305 22:00': '142.000', '20200305 23:00': '147.000',
'20200306 00:00': '152.000', '20200306 01:00': '159.000',
'20200306 02:00': '165.000', '20200306 03:00': '171.000',
'20200306 04:00': '176.000', '20200306 05:00': '181.000',
'20200306 06:00': '186.000', '20200306 07:00': '191.000',
'20200306 08:00': '196.000', '20200306 09:00': '201.000',
'20200306 10:00': '205.000', '20200306 11:00': '208.000',
'20200306 12:00': '211.000', '20200306 13:00': '216.000',
'20200306 14:00': '218.000', '20200306 15:00': '219.000',
'20200306 16:00': '220.000', '20200306 17:00': '220.000',
'20200306 18:00': '221.000', '20200306 19:00': '221.000',
'20200306 20:00': '221.000', '20200306 21:00': '220.000',
'20200306 22:00': '219.000', '20200306 23:00': '219.000',
'20200307 00:00': '222.000', '20200307 01:00': '225.000',
'20200307 02:00': '229.000', '20200307 03:00': '233.000',
'20200307 04:00': '237.000', '20200307 05:00': '240.000',
'20200307 06:00': '243.000', '20200307 07:00': '244.000',
'20200307 08:00': '243.000', '20200307 09:00': '242.000',
'20200307 10:00': '240.000', '20200307 11:00': '237.000',
'area': '2280.000',
'datatype': 'QTFIX',
'end': '20200307 12:00',
'name': "L'Arroux à Rigny-sur-Arroux",
'provider': 'DREAL Centre',
'start': '20200305 12:00',
'station': 'K1341810',
'units': 'm3/s',
'z0': '237.000'}
}
Cas avec un fichier H-TEMPS
>>> f = 'data/data/hydro2/htemps.txt'
>>> d = 'H-TEMPS'
>>> reader = Hydro2(filename=f, datatype=d)
>>> content = reader.read()
>>> content
{
'K1251810': {
'20200305 01:00': '2770.000', '20200305 03:30': '2760.000',
'20200305 04:30': '2750.000', '20200305 05:00': '2750.000',
'20200305 05:30': '2750.000', '20200305 07:30': '2770.000',
'20200305 08:00': '2780.000', '20200305 08:30': '2810.000',
'20200305 10:00': '2930.000', '20200305 10:30': '2990.000',
'20200305 11:00': '3060.000', '20200305 11:30': '3110.000',
'20200305 12:30': '3250.000', '20200305 13:00': '3320.000',
'20200305 14:00': '3460.000', '20200305 14:30': '3520.000',
'20200305 15:00': '3570.000', '20200305 15:30': '3620.000',
'20200305 16:30': '3730.000', '20200305 17:00': '3770.000',
'20200305 17:30': '3810.000', '20200305 18:00': '3840.000',
'20200305 18:30': '3870.000', '20200305 19:00': '3880.000',
'20200305 19:30': '3900.000', '20200305 20:00': '3900.000',
'20200305 20:30': '3920.000', '20200305 21:00': '3930.000',
'20200305 21:30': '3930.000', '20200305 23:00': '3960.000',
'20200305 23:30': '3970.000', '20200306 00:30': '4000.000',
'20200306 01:00': '4020.000', '20200306 01:30': '4040.000',
'20200306 02:30': '4100.000', '20200306 03:30': '4170.000',
'20200306 04:00': '4200.000', '20200306 04:30': '4260.000',
'20200306 05:00': '4310.000', '20200306 05:30': '4340.000',
'20200306 06:30': '4350.000', '20200306 07:00': '4350.000',
'20200306 07:30': '4340.000', '20200306 09:00': '4310.000',
'20200306 11:00': '4270.000', '20200306 12:00': '4250.000',
'20200306 12:30': '4240.000', '20200306 13:00': '4230.000',
'20200306 13:30': '4220.000', '20200306 16:00': '4180.000',
'20200306 17:00': '4170.000', '20200306 18:00': '4150.000',
'20200306 19:00': '4140.000', '20200306 19:30': '4130.000',
'20200306 20:00': '4130.000', '20200306 22:30': '4090.000',
'area': '776.000',
'name': "L'Arroux à Dracy-Saint-Loup [Surmoulin]",
'provider': 'DREAL Bourgogne',
'station': 'K1251810',
'z0': '291.000'},
'K1321810': {
'20200305 01:30': '1560.000', '20200305 11:00': '2240.000',
'20200305 13:15': '2640.000', '20200305 14:45': '2840.000',
'20200305 16:00': '2990.000', '20200305 16:45': '3040.000',
'20200305 17:45': '3120.000', '20200305 20:15': '3150.000',
'20200305 20:45': '3150.000', '20200305 21:45': '3170.000',
'20200305 22:15': '3180.000', '20200305 23:00': '3200.000',
'20200305 23:45': '3220.000', '20200306 00:00': '3230.000',
'20200306 00:15': '3220.000', '20200306 00:30': '3240.000',
'20200306 03:15': '3260.000', '20200306 03:30': '3260.000',
'20200306 05:00': '3250.000', '20200306 05:45': '3250.000',
'20200306 06:00': '3260.000', '20200306 06:30': '3240.000',
'20200306 06:45': '3250.000', '20200306 07:00': '3250.000',
'20200306 07:15': '3260.000', '20200306 07:30': '3250.000',
'20200306 07:45': '3250.000', '20200306 08:15': '3250.000',
'20200306 08:30': '3250.000', '20200306 09:45': '3270.000',
'20200306 10:00': '3260.000', '20200306 10:45': '3260.000',
'20200306 11:45': '3300.000', '20200306 12:15': '3320.000',
'20200306 13:15': '3360.000', '20200306 14:00': '3380.000',
'20200306 14:45': '3400.000', '20200306 15:15': '3420.000',
'20200306 16:00': '3420.000', '20200306 16:45': '3430.000',
'20200306 17:15': '3420.000', '20200306 17:30': '3420.000',
'20200306 18:45': '3420.000', '20200306 19:00': '3400.000',
'20200306 19:45': '3380.000', '20200306 20:15': '3370.000',
'20200306 20:30': '3380.000', '20200306 21:00': '3360.000',
'20200306 21:30': '3360.000', '20200306 22:00': '3330.000',
'20200306 22:15': '3330.000', '20200306 23:15': '3310.000',
'area': '1800.000',
'name': "L'Arroux à Étang-sur-Arroux [Pont du Tacot]",
'provider': 'DREAL Centre',
'station': 'K1321810',
'z0': '273.000'},
'K1341810': {
'20200305 02:30': '1010.000', '20200305 03:45': '1000.000',
'20200305 05:45': '1000.000', '20200305 06:00': '1000.000',
'20200305 06:15': '1000.000', '20200305 06:30': '1010.000',
'20200305 07:15': '1020.000', '20200305 07:30': '1020.000',
'20200305 09:15': '1060.000', '20200305 12:00': '1130.000',
'20200305 13:00': '1160.000', '20200305 16:00': '1270.000',
'20200305 19:15': '1380.000', '20200305 19:30': '1380.000',
'20200306 00:00': '1510.000', '20200306 01:30': '1540.000',
'20200306 01:45': '1550.000', '20200306 02:30': '1560.000',
'20200306 05:00': '1610.000', '20200306 08:15': '1670.000',
'20200306 10:30': '1700.000', '20200306 11:00': '1710.000',
'20200306 11:45': '1720.000', '20200306 13:00': '1730.000',
'20200306 14:45': '1750.000', '20200306 16:00': '1750.000',
'20200306 17:00': '1750.000', '20200306 17:45': '1750.000',
'20200306 20:45': '1750.000', '20200306 21:15': '1750.000',
'20200306 22:00': '1750.000', '20200306 22:15': '1750.000',
'20200306 22:45': '1750.000', '20200306 23:15': '1750.000',
'area': '2280.000',
'name': "L'Arroux à Rigny-sur-Arroux",
'provider': 'DREAL Centre',
'station': 'K1341810',
'z0': '237.000'}
}
Cas avec un fichier QJM
>>> f = 'data/data/hydro2/qjm.txt'
>>> d = 'QJM'
>>> reader = Hydro2(filename=f, datatype=d)
>>> content = reader.read()
>>> content
{
'K1251810': {
'20200305': '30000.000', '20200306': '93100.000',
'20200307': '47600.000',
'area': '776.000',
'name': "L'Arroux à Dracy-Saint-Loup [Surmoulin]",
'provider': 'DREAL Bourgogne',
'station': 'K1251810',
'z0': '291.000'},
'K1321810': {
'20200305': '121000.000', '20200306': '224000.000',
'20200307': '162000.000',
'area': '1800.000',
'name': "L'Arroux à Étang-sur-Arroux [Pont du Tacot]",
'provider': 'DREAL Centre',
'station': 'K1321810',
'z0': '273.000'},
'K1341810': {
'20200305': '98100.000', '20200306': '201000.000',
'20200307': '225000.000',
'area': '2280.000',
'name': "L'Arroux à Rigny-sur-Arroux",
'provider': 'DREAL Centre',
'station': 'K1341810',
'z0': '237.000'}
}
Cas avec un fichier TOUSMOIS débutant en janvier
>>> f = 'data/data/hydro2/tmoisjan.txt'
>>> d = 'TOUSMOIS'
>>> reader = Hydro2(filename=f, datatype=d)
>>> content = reader.read()
>>> content
{
'K1251810': {
'2010_01': '11.4', '2010_02': '17.4', '2010_03': '8.9',
'2010_04': '8.0', '2010_05': '1.8', '2010_06': '3.9',
'2010_07': '0.8', '2010_08': '0.5', '2010_09': '1.2',
'2010_10': '1.0', '2010_11': '15.0', '2010_12': '31.8',
'2010_AA': '8.4', '2011_01': '13.1', '2011_02': '3.3',
'2011_03': '6.1', '2011_04': '1.7', '2011_05': '0.7',
'2011_06': '0.5', '2011_07': '0.5', '2011_08': '0.7',
'2011_09': '0.4', '2011_10': '0.4', '2011_11': '2.0',
'2011_12': '15.6', '2011_AA': '3.8', '2012_01': '15.1',
'2012_02': '2.9', '2012_03': '3.0', '2012_04': '5.0',
'2012_05': '14.9', '2012_06': '2.7', '2012_07': '0.9',
'2012_08': '0.2', '2012_09': '0.4', '2012_10': '1.4',
'2012_11': '4.5', '2012_12': '23.3', '2012_AA': '6.2',
'2013_01': '21.0', '2013_02': '22.4', '2013_03': '9.7',
'2013_04': '16.5', '2013_05': '30.1', '2013_06': '5.1',
'2013_07': '1.1', '2013_08': '0.5', '2013_09': '0.7',
'2013_10': '3.1', '2013_11': '16.0', '2013_12': '11.1',
'2013_AA': '11.4', '2014_01': '25.7', '2014_02': '22.1',
'2014_03': '8.6', '2014_04': '1.5', '2014_05': '1.1',
'2014_06': '0.3', '2014_07': '1.3', '2014_08': '0.9',
'2014_09': '0.3', '2014_10': '1.3', '2014_11': '13.2',
'2014_12': '9.0', '2014_AA': '7.0', '2015_01': '11.4',
'2015_02': '12.9', '2015_03': '5.6', '2015_04': '3.5',
'2015_05': '8.5', '2015_06': '0.6', '2015_07': '0.2',
'2015_08': '0.3', '2015_09': '1.2', '2015_10': '1.2',
'2015_11': '2.3', '2015_12': '2.1', '2015_AA': '4.1',
'2016_01': '14.7', '2016_02': '24.4', '2016_03': '11.0',
'2016_04': '19.0', '2016_05': '17.8', '2016_06': '14.0',
'2016_07': '0.8', '2016_08': '0.3', '2016_09': '0.4',
'2016_10': '0.7', '2016_11': '8.5', '2016_12': '3.1',
'2016_AA': '9.5', '2017_01': '2.4', '2017_02': '6.7',
'2017_03': '13.3', '2017_04': '2.0', '2017_05': '3.5',
'2017_06': '1.0', '2017_07': '0.5', '2017_08': '0.2',
'2017_09': '0.3', '2017_10': '0.3', '2017_11': '0.7',
'2017_12': '10.8', '2017_AA': '3.5', '2018_01': '36.5',
'2018_02': '14.4', '2018_03': '18.4', '2018_04': '7.4',
'2018_05': '1.8', '2018_06': '3.6', '2018_07': '0.3',
'2018_08': '0.2', '2018_09': '0.2', '2018_10': '0.2',
'2018_11': '0.5', '2018_12': '5.3', '2018_AA': '7.4',
'2019_01': '4.6', '2019_02': '8.6', '2019_03': '4.4',
'2019_04': '2.2', '2019_05': '1.7', '2019_06': '0.4',
'2019_07': '0.1', '2019_08': '0.1', '2019_09': '0.1',
'2019_10': '0.5', '2019_11': '1.5', '2019_12': '3.1',
'2019_AA': '2.2', '2020_01': '5.1', '2020_02': '13.9',
'2020_03': '13.9', '2020_04': '0.8', '2020_05': '0.7',
'2020_06': '0.6', '2020_07': '0.1', '2020_08': '0.1',
'2020_09': '0.1', '2020_10': '1.9', '2020_11': '1.0',
'2020_12': '12.4', '2020_AA': '4.2',
'QMM_01': '14.6', 'QMM_02': '13.5', 'QMM_03': '9.4',
'QMM_04': '6.2', 'QMM_05': '7.5', 'QMM_06': '3.0',
'QMM_07': '0.6', 'QMM_08': '0.4', 'QMM_09': '0.5',
'QMM_10': '1.1', 'QMM_11': '5.9', 'QMM_12': '11.6',
'QMM_AA': '6.2',
'area': '776.000',
'datatype': 'TOUSMOIS',
'end': '2021',
'name': "L'Arroux à Dracy-Saint-Loup [Surmoulin]",
'precision': '####.#',
'provider': 'DREAL Bourgogne',
'start': '2010',
'start_month': ' 1',
'station': 'K1251810',
'subtype': 'Naturels',
'units': 'm3/s',
'z0': '291.000'},
'K1321810': {
'2010_01': '34.5', '2010_02': '51.8', '2010_03': '30.5',
'2010_04': '27.4', '2010_05': '8.9', '2010_06': '13.5',
'2010_07': '4.2', '2010_08': '2.8', '2010_09': '5.0',
'2010_10': '5.2', '2010_11': '41.8', '2010_12': '86.1',
'2010_AA': '25.8', '2011_01': '42.0', '2011_02': '10.4',
'2011_03': '17.4', '2011_04': '6.6', '2011_05': '3.0',
'2011_06': '1.8', '2011_07': '2.2', '2011_08': '2.5',
'2011_09': '1.5', '2011_10': '1.9', '2011_11': '7.0',
'2011_12': '58.8', '2011_AA': '13.0', '2012_01': '63.3',
'2012_02': '11.1', '2012_03': '9.4', '2012_04': '19.1',
'2012_05': '38.9', '2012_06': '10.6', '2012_07': '5.8',
'2012_08': '2.1', '2012_09': '2.4', '2012_10': '6.0',
'2012_11': '15.2', '2012_12': '76.1', '2012_AA': '21.8',
'2013_01': '61.1', '2013_02': '73.2', '2013_03': '32.7',
'2013_04': '44.5', '2013_05': '78.3', '2013_06': '16.1',
'2013_07': '5.7', '2013_08': '3.3', '2013_09': '3.9',
'2013_10': '9.9', '2013_11': '48.2', '2013_12': '27.6',
'2013_AA': '33.4', '2014_01': '66.9', '2014_02': '62.6',
'2014_03': '27.9', '2014_04': '6.8', '2014_05': '4.8',
'2014_06': '2.0', '2014_07': '3.9', '2014_08': '4.1',
'2014_09': '2.2', '2014_10': '7.9', '2014_11': '35.9',
'2014_12': '25.9', '2014_AA': '20.7', '2015_01': '40.3',
'2015_02': '40.8', '2015_03': '24.5', '2015_04': '20.7',
'2015_05': '35.6', '2015_06': '3.8', '2015_07': '1.1',
'2015_08': '1.4', '2015_09': '3.5', '2015_10': '3.6',
'2015_11': '8.8', '2015_12': '8.1', '2015_AA': '15.9',
'2016_01': '42.8', '2016_02': '74.8', '2016_03': '40.6',
'2016_04': '47.8', '2016_05': '40.7', '2016_06': '37.6',
'2016_07': '4.6', '2016_08': '2.0', '2016_09': '1.6',
'2016_10': '2.7', '2016_11': '26.6', '2016_12': '9.6',
'2016_AA': '27.4', '2017_01': '8.3', '2017_02': '21.7',
'2017_03': '46.1', '2017_04': '9.2', '2017_05': '14.7',
'2017_06': '5.1', '2017_07': '3.5', '2017_08': '1.6',
'2017_09': '2.2', '2017_10': '2.0', '2017_11': '5.6',
'2017_12': '43.0', '2017_AA': '13.6', '2018_01': '130.0',
'2018_02': '46.1', '2018_03': '52.8', '2018_04': '24.6',
'2018_05': '7.9', '2018_06': '8.6', '2018_07': '1.9',
'2018_08': '0.9', '2018_09': '0.8', '2018_10': '1.1',
'2018_11': '3.0', '2018_12': '33.4', '2018_AA': '25.9',
'2019_01': '18.1', '2019_02': '31.8', '2019_03': '26.7',
'2019_04': '10.8', '2019_05': '9.3', '2019_06': '2.7',
'2019_07': '0.9', '2019_08': '0.5', '2019_09': '0.5',
'2019_10': '2.3', '2019_11': '12.5', '2019_12': '64.5',
'2019_AA': '15.0', '2020_01': '24.1', '2020_02': '54.6',
'2020_03': '48.9', '2020_04': '4.8', '2020_05': '4.1',
'2020_06': '3.5', '2020_07': '1.0', '2020_08': '0.5',
'2020_09': '0.7', '2020_10': '8.6', '2020_11': '6.0',
'2020_12': '36.4', '2020_AA': '16.0',
'QMM_01': '48.3', 'QMM_02': '43.5', 'QMM_03': '32.5',
'QMM_04': '20.2', 'QMM_05': '22.4', 'QMM_06': '9.6',
'QMM_07': '3.2', 'QMM_08': '2.0', 'QMM_09': '2.2',
'QMM_10': '4.7', 'QMM_11': '19.1', 'QMM_12': '42.7',
'QMM_AA': '20.8',
'area': '1800.000',
'datatype': 'TOUSMOIS',
'end': '2021',
'name': "L'Arroux à Étang-sur-Arroux [Pont du Tacot]",
'precision': '####.#',
'provider': 'DREAL Centre',
'start': '2010',
'start_month': ' 1',
'station': 'K1321810',
'subtype': 'Naturels',
'units': 'm3/s',
'z0': '273.000'},
'K1341810': {
'2010_01': '45.2', '2010_02': '63.9', '2010_03': '38.9',
'2010_04': '34.3', '2010_05': '11.5', '2010_06': '16.0',
'2010_07': '6.3', '2010_08': '3.9', '2010_09': '6.0',
'2010_10': '7.9', '2010_11': '56.8', '2010_12': '103.0',
'2010_AA': '32.6', '2011_01': '48.6', '2011_02': '14.0',
'2011_03': '19.4', '2011_04': '8.3', '2011_05': '3.4',
'2011_06': '1.9', '2011_07': '1.8', '2011_08': '2.4',
'2011_09': '1.8', '2011_10': '1.7', '2011_11': '9.3',
'2011_12': '67.9', '2011_AA': '15.1', '2012_01': '82.6',
'2012_02': '17.3', '2012_03': '12.4', '2012_04': '21.6',
'2012_05': '49.4', '2012_06': '14.8', '2012_07': '8.0',
'2012_08': '2.4', '2012_09': '3.3', '2012_10': '8.5',
'2012_11': '17.1', '2012_12': '94.4', '2012_AA': '27.9',
'2013_01': '77.8', '2013_02': '88.0', '2013_03': '37.9',
'2013_04': '51.5', '2013_05': '91.8', '2013_06': '19.9',
'2013_07': '7.0', '2013_08': '4.8', '2013_09': '5.3',
'2013_10': '10.8', '2013_11': '54.9', '2013_12': '32.6',
'2013_AA': '39.9', '2014_01': '82.6', '2014_02': '76.8',
'2014_03': '36.1', '2014_04': '8.6', '2014_05': '6.8',
'2014_06': '2.5', '2014_07': '5.6', '2014_08': '5.9',
'2014_09': '3.0', '2014_10': '9.6', '2014_11': '48.5',
'2014_12': '33.9', '2014_AA': '26.4', '2015_01': '45.9',
'2015_02': '48.1', '2015_03': '28.0', '2015_04': '25.9',
'2015_05': '42.8', '2015_06': '6.3', '2015_07': '1.4',
'2015_08': '1.6', '2015_09': '4.7', '2015_10': '3.8',
'2015_11': '10.0', '2015_12': '9.9', '2015_AA': '18.9',
'2016_01': '52.5', '2016_02': '91.3', '2016_03': '47.2',
'2016_04': '56.4', '2016_05': '46.0', '2016_06': '51.2',
'2016_07': '6.6', '2016_08': '2.7', '2016_09': '2.1',
'2016_10': '3.2', '2016_11': '34.1', '2016_12': '12.4',
'2016_AA': '33.5', '2017_01': '10.3', '2017_02': '25.5',
'2017_03': '49.9', '2017_04': '11.1', '2017_05': '17.0',
'2017_06': '6.4', '2017_07': '4.3', '2017_08': '1.4',
'2017_09': '2.1', '2017_10': '1.4', '2017_11': '5.5',
'2017_12': '53.6', '2017_AA': '15.7', '2018_01': '156.0',
'2018_02': '59.8', '2018_03': '60.9', '2018_04': '27.8',
'2018_05': '9.5', '2018_06': '11.1', '2018_07': '2.6',
'2018_08': '1.1', '2018_09': '1.0', '2018_10': '1.1',
'2018_11': '3.2', '2018_12': '38.8', '2018_AA': '31.0',
'2019_01': '21.7', '2019_02': '37.5', '2019_03': '30.6',
'2019_04': '12.7', '2019_05': '12.7', '2019_06': '3.2',
'2019_07': '0.9', '2019_08': '0.6', '2019_09': '0.5',
'2019_10': '3.0', '2019_11': '16.1', '2019_12': '81.5',
'2019_AA': '18.4', '2020_01': '27.8', '2020_02': '60.2',
'2020_03': '58.2', '2020_04': '6.0', '2020_05': '4.7',
'2020_06': '5.0', '2020_07': '1.1', '2020_08': '0.5',
'2020_09': '0.8', '2020_10': '11.7', '2020_11': '8.0',
'2020_12': '45.3', '2020_AA': '19.0',
'QMM_01': '59.2', 'QMM_02': '52.9', 'QMM_03': '38.1',
'QMM_04': '24.0', 'QMM_05': '26.9', 'QMM_06': '12.5',
'QMM_07': '4.1', 'QMM_08': '2.5', 'QMM_09': '2.8',
'QMM_10': '5.7', 'QMM_11': '23.9', 'QMM_12': '52.2',
'QMM_AA': '25.3',
'area': '2280.000',
'datatype': 'TOUSMOIS',
'end': '2021',
'name': "L'Arroux à Rigny-sur-Arroux",
'precision': '####.#',
'provider': 'DREAL Centre',
'start': '2010',
'start_month': ' 1',
'station': 'K1341810',
'subtype': 'Naturels',
'units': 'm3/s',
'z0': '237.000'}
}
Cas avec un fichier TOUSMOIS débutant en septembre
>>> f = 'data/data/hydro2/tousmois.txt'
>>> d = 'TOUSMOIS'
>>> reader = Hydro2(filename=f, datatype=d)
>>> content = reader.read()
>>> content
{
'K1251810': {
'2010_09': '1.2', '2010_10': '1.0', '2010_11': '15.0',
'2010_12': '31.8', '2010_AA': '6.3', '2011_01': '13.1',
'2011_02': '3.3', '2011_03': '6.1', '2011_04': '1.7',
'2011_05': '0.7', '2011_06': '0.5', '2011_07': '0.5',
'2011_08': '0.7', '2011_09': '0.4', '2011_10': '0.4',
'2011_11': '2.0', '2011_12': '15.6', '2011_AA': '5.3',
'2012_01': '15.1', '2012_02': '2.9', '2012_03': '3.0',
'2012_04': '5.0', '2012_05': '14.9', '2012_06': '2.7',
'2012_07': '0.9', '2012_08': '0.2', '2012_09': '0.4',
'2012_10': '1.4', '2012_11': '4.5', '2012_12': '23.3',
'2012_AA': '11.3', '2013_01': '21.0', '2013_02': '22.4',
'2013_03': '9.7', '2013_04': '16.5', '2013_05': '30.1',
'2013_06': '5.1', '2013_07': '1.1', '2013_08': '0.5',
'2013_09': '0.7', '2013_10': '3.1', '2013_11': '16.0',
'2013_12': '11.1', '2013_AA': '7.6', '2014_01': '25.7',
'2014_02': '22.1', '2014_03': '8.6', '2014_04': '1.5',
'2014_05': '1.1', '2014_06': '0.3', '2014_07': '1.3',
'2014_08': '0.9', '2014_09': '0.3', '2014_10': '1.3',
'2014_11': '13.2', '2014_12': '9.0', '2014_AA': '5.5',
'2015_01': '11.4', '2015_02': '12.9', '2015_03': '5.6',
'2015_04': '3.5', '2015_05': '8.5', '2015_06': '0.6',
'2015_07': '0.2', '2015_08': '0.3', '2015_09': '1.2',
'2015_10': '1.2', '2015_11': '2.3', '2015_12': '2.1',
'2015_AA': '9.0', '2016_01': '14.7', '2016_02': '24.4',
'2016_03': '11.0', '2016_04': '19.0', '2016_05': '17.8',
'2016_06': '14.0', '2016_07': '0.8', '2016_08': '0.3',
'2016_09': '0.4', '2016_10': '0.7', '2016_11': '8.5',
'2016_12': '3.1', '2016_AA': '3.5', '2017_01': '2.4',
'2017_02': '6.7', '2017_03': '13.3', '2017_04': '2.0',
'2017_05': '3.5', '2017_06': '1.0', '2017_07': '0.5',
'2017_08': '0.2', '2017_09': '0.3', '2017_10': '0.3',
'2017_11': '0.7', '2017_12': '10.8', '2017_AA': '7.9',
'2018_01': '36.5', '2018_02': '14.4', '2018_03': '18.4',
'2018_04': '7.4', '2018_05': '1.8', '2018_06': '3.6',
'2018_07': '0.3', '2018_08': '0.2', '2018_09': '0.2',
'2018_10': '0.2', '2018_11': '0.5', '2018_12': '5.3',
'2018_AA': '2.3', '2019_01': '4.6', '2019_02': '8.6',
'2019_03': '4.4', '2019_04': '2.2', '2019_05': '1.7',
'2019_06': '0.4', '2019_07': '0.1', '2019_08': '0.1',
'2019_09': '0.1', '2019_10': '0.5', '2019_11': '1.5',
'2019_12': '3.1', '2019_AA': '3.3', '2020_01': '5.1',
'2020_02': '13.9', '2020_03': '13.9', '2020_04': '0.8',
'2020_05': '0.7', '2020_06': '0.6', '2020_07': '0.1',
'2020_08': '0.1', '2020_09': '0.1', '2020_10': '1.9',
'2020_11': '1.0', '2020_12': '12.4', '2020_AA': '',
'2021_01': '', '2021_02': '', '2021_03': '', '2021_04': '',
'2021_05': '', '2021_06': '', '2021_07': '', '2021_08': '',
'QMM_01': '15.0', 'QMM_02': '13.2', 'QMM_03': '9.4',
'QMM_04': '6.0', 'QMM_05': '8.1', 'QMM_06': '2.9',
'QMM_07': '0.6', 'QMM_08': '0.4', 'QMM_09': '0.5',
'QMM_10': '1.1', 'QMM_11': '5.9', 'QMM_12': '11.6',
'QMM_AA': '6.2',
'area': '776.000',
'datatype': 'TOUSMOIS',
'end': '2021',
'name': "L'Arroux à Dracy-Saint-Loup [Surmoulin]",
'precision': '####.#',
'provider': 'DREAL Bourgogne',
'start': '2010',
'start_month': ' 9',
'station': 'K1251810',
'subtype': 'Naturels',
'units': 'm3/s',
'z0': '291.000'},
'K1321810': {
'2010_09': '5.0', '2010_10': '5.2', '2010_11': '41.8',
'2010_12': '86.1', '2010_AA': '18.8', '2011_01': '42.0',
'2011_02': '10.4', '2011_03': '17.4', '2011_04': '6.6',
'2011_05': '3.0', '2011_06': '1.8', '2011_07': '2.2',
'2011_08': '2.5', '2011_09': '1.5', '2011_10': '1.9',
'2011_11': '7.0', '2011_12': '58.8', '2011_AA': '19.3',
'2012_01': '63.3', '2012_02': '11.1', '2012_03': '9.4',
'2012_04': '19.1', '2012_05': '38.9', '2012_06': '10.6',
'2012_07': '5.8', '2012_08': '2.1', '2012_09': '2.4',
'2012_10': '6.0', '2012_11': '15.2', '2012_12': '76.1',
'2012_AA': '34.4', '2013_01': '61.1', '2013_02': '73.2',
'2013_03': '32.7', '2013_04': '44.5', '2013_05': '78.3',
'2013_06': '16.1', '2013_07': '5.7', '2013_08': '3.3',
'2013_09': '3.9', '2013_10': '9.9', '2013_11': '48.2',
'2013_12': '27.6', '2013_AA': '22.1', '2014_01': '66.9',
'2014_02': '62.6', '2014_03': '27.9', '2014_04': '6.8',
'2014_05': '4.8', '2014_06': '2.0', '2014_07': '3.9',
'2014_08': '4.1', '2014_09': '2.2', '2014_10': '7.9',
'2014_11': '35.9', '2014_12': '25.9', '2014_AA': '19.9',
'2015_01': '40.3', '2015_02': '40.8', '2015_03': '24.5',
'2015_04': '20.7', '2015_05': '35.6', '2015_06': '3.8',
'2015_07': '1.1', '2015_08': '1.4', '2015_09': '3.5',
'2015_10': '3.6', '2015_11': '8.8', '2015_12': '8.1',
'2015_AA': '26.0', '2016_01': '42.8', '2016_02': '74.8',
'2016_03': '40.6', '2016_04': '47.8', '2016_05': '40.7',
'2016_06': '37.6', '2016_07': '4.6', '2016_08': '2.0',
'2016_09': '1.6', '2016_10': '2.7', '2016_11': '26.6',
'2016_12': '9.6', '2016_AA': '12.5', '2017_01': '8.3',
'2017_02': '21.7', '2017_03': '46.1', '2017_04': '9.2',
'2017_05': '14.7', '2017_06': '5.1', '2017_07': '3.5',
'2017_08': '1.6', '2017_09': '2.2', '2017_10': '2.0',
'2017_11': '5.6', '2017_12': '43.0', '2017_AA': '27.1',
'2018_01': '130.0', '2018_02': '46.1', '2018_03': '52.8',
'2018_04': '24.6', '2018_05': '7.9', '2018_06': '8.6',
'2018_07': '1.9', '2018_08': '0.9', '2018_09': '0.8',
'2018_10': '1.1', '2018_11': '3.0', '2018_12': '33.4',
'2018_AA': '11.5', '2019_01': '18.1', '2019_02': '31.8',
'2019_03': '26.7', '2019_04': '10.8', '2019_05': '9.3',
'2019_06': '2.7', '2019_07': '0.9', '2019_08': '0.5',
'2019_09': '0.5', '2019_10': '2.3', '2019_11': '12.5',
'2019_12': '64.5', '2019_AA': '18.4', '2020_01': '24.1',
'2020_02': '54.6', '2020_03': '48.9', '2020_04': '4.8',
'2020_05': '4.1', '2020_06': '3.5', '2020_07': '1.0',
'2020_08': '0.5', '2020_09': '0.7', '2020_10': '8.6',
'2020_11': '6.0', '2020_12': '36.4', '2020_AA': '',
'2021_01': '64.9', '2021_02': '', '2021_03': '', '2021_04': '',
'2021_05': '', '2021_06': '', '2021_07': '', '2021_08': '',
'QMM_01': '51.0', 'QMM_02': '42.7', 'QMM_03': '32.7',
'QMM_04': '19.5', 'QMM_05': '23.7', 'QMM_06': '9.2',
'QMM_07': '3.1', 'QMM_08': '1.9', 'QMM_09': '2.2',
'QMM_10': '4.7', 'QMM_11': '19.1', 'QMM_12': '42.7',
'QMM_AA': '21.0',
'area': '1800.000',
'datatype': 'TOUSMOIS',
'end': '2021',
'name': "L'Arroux à Étang-sur-Arroux [Pont du Tacot]",
'precision': '####.#',
'provider': 'DREAL Centre',
'start': '2010',
'start_month': ' 9',
'station': 'K1321810',
'subtype': 'Naturels',
'units': 'm3/s',
'z0': '273.000'},
'K1341810': {
'2010_09': '6.0', '2010_10': '7.9', '2010_11': '56.8',
'2010_12': '103.0', '2010_AA': '22.9', '2011_01': '48.6',
'2011_02': '14.0', '2011_03': '19.4', '2011_04': '8.3',
'2011_05': '3.4', '2011_06': '1.9', '2011_07': '1.8',
'2011_08': '2.4', '2011_09': '1.8', '2011_10': '1.7',
'2011_11': '9.3', '2011_12': '67.9', '2011_AA': '24.3',
'2012_01': '82.6', '2012_02': '17.3', '2012_03': '12.4',
'2012_04': '21.6', '2012_05': '49.4', '2012_06': '14.8',
'2012_07': '8.0', '2012_08': '2.4', '2012_09': '3.3',
'2012_10': '8.5', '2012_11': '17.1', '2012_12': '94.4',
'2012_AA': '41.7', '2013_01': '77.8', '2013_02': '88.0',
'2013_03': '37.9', '2013_04': '51.5', '2013_05': '91.8',
'2013_06': '19.9', '2013_07': '7.0', '2013_08': '4.8',
'2013_09': '5.3', '2013_10': '10.8', '2013_11': '54.9',
'2013_12': '32.6', '2013_AA': '27.1', '2014_01': '82.6',
'2014_02': '76.8', '2014_03': '36.1', '2014_04': '8.6',
'2014_05': '6.8', '2014_06': '2.5', '2014_07': '5.6',
'2014_08': '5.9', '2014_09': '3.0', '2014_10': '9.6',
'2014_11': '48.5', '2014_12': '33.9', '2014_AA': '24.4',
'2015_01': '45.9', '2015_02': '48.1', '2015_03': '28.0',
'2015_04': '25.9', '2015_05': '42.8', '2015_06': '6.3',
'2015_07': '1.4', '2015_08': '1.6', '2015_09': '4.7',
'2015_10': '3.8', '2015_11': '10.0', '2015_12': '9.9',
'2015_AA': '31.6', '2016_01': '52.5', '2016_02': '91.3',
'2016_03': '47.2', '2016_04': '56.4', '2016_05': '46.0',
'2016_06': '51.2', '2016_07': '6.6', '2016_08': '2.7',
'2016_09': '2.1', '2016_10': '3.2', '2016_11': '34.1',
'2016_12': '12.4', '2016_AA': '14.7', '2017_01': '10.3',
'2017_02': '25.5', '2017_03': '49.9', '2017_04': '11.1',
'2017_05': '17.0', '2017_06': '6.4', '2017_07': '4.3',
'2017_08': '1.4', '2017_09': '2.1', '2017_10': '1.4',
'2017_11': '5.5', '2017_12': '53.6', '2017_AA': '32.6',
'2018_01': '156.0', '2018_02': '59.8', '2018_03': '60.9',
'2018_04': '27.8', '2018_05': '9.5', '2018_06': '11.1',
'2018_07': '2.6', '2018_08': '1.1', '2018_09': '1.0',
'2018_10': '1.1', '2018_11': '3.2', '2018_12': '38.8',
'2018_AA': '13.5', '2019_01': '21.7', '2019_02': '37.5',
'2019_03': '30.6', '2019_04': '12.7', '2019_05': '12.7',
'2019_06': '3.2', '2019_07': '0.9', '2019_08': '0.6',
'2019_09': '0.5', '2019_10': '3.0', '2019_11': '16.1',
'2019_12': '81.5', '2019_AA': '22.0', '2020_01': '27.8',
'2020_02': '60.2', '2020_03': '58.2', '2020_04': '6.0',
'2020_05': '4.7', '2020_06': '5.0', '2020_07': '1.1',
'2020_08': '0.5', '2020_09': '0.8', '2020_10': '11.7',
'2020_11': '8.0', '2020_12': '45.3', '2020_AA': '',
'2021_01': '82.2', '2021_02': '', '2021_03': '', '2021_04': '',
'2021_05': '', '2021_06': '', '2021_07': '', '2021_08': '',
'QMM_01': '62.5', 'QMM_02': '51.8', 'QMM_03': '38.1',
'QMM_04': '23.0', 'QMM_05': '28.4', 'QMM_06': '12.2',
'QMM_07': '3.9', 'QMM_08': '2.3', 'QMM_09': '2.8',
'QMM_10': '5.7', 'QMM_11': '23.9', 'QMM_12': '52.2',
'QMM_AA': '25.5',
'area': '2280.000',
'datatype': 'TOUSMOIS',
'end': '2021',
'name': "L'Arroux à Rigny-sur-Arroux",
'precision': '####.#',
'provider': 'DREAL Centre',
'start': '2010',
'start_month': ' 9',
'station': 'K1341810',
'subtype': 'Naturels',
'units': 'm3/s',
'z0': '237.000'}
}
"""
info = {}
with open(self.filename, 'r', encoding='cp1252') as f:
for line in f.readlines():
x = line.split(';')
# Lignes à ignorer
if x[0] in LINESTOSKIP:
continue
# Décomposition de la ligne sous forme de dictionnaire
try:
meta = {k: SEP[x[0]].join([x[i] for i in v])
for k, v in LINECONTENTS[x[0]].items()}
except KeyError:
continue
# Décomposition de la ligne sous forme de paires
# clé: valeur
try:
ik = SEP[x[0]].join([x[i] for i in PAIRVALUES[x[0]][0]])
iv = SEP[x[0]].join([x[i] for i in PAIRVALUES[x[0]][1]])
meta2 = {ik: iv}
except KeyError:
pass
else:
meta.update(meta2)
# Spécificité de la ligne 907 (TOUSMOIS)
if x[0] == '907':
meta.update(_process_907(x, int(meta['start_month'])))
# Spécificité de la ligne 908 (TOUSMOIS)
elif x[0] == '908':
meta.update(_process_908(
x,
int(info[meta['station']]['start_month']),
int(x[3])))
# Mise-à-jour des données de la station
s = meta['station']
info.setdefault(s, {})
info[s].update(meta)
return info
[docs]
def write(self):
"""
Ecrire le fichier d'export de données HYDRO-2.
Raises
------
NotImplementedError
"""
raise NotImplementedError
[docs]
@classmethod
def get_datatypes(cls):
"""
Définir le type de procédure d'export de données Hydro-2.
Returns
-------
list
Liste des procédures d'export de données Hydro-2
"""
return sorted(DATATYPES['data'])