Bonjour,


je souhaite lancer un script sur plusieurs fichiers d'un sous dossier:

Je m’explique: j'ai un dossier résultats qui contient 4 autre dossiers à l'intérieur desquel se trouvent des fichiers islands.csv que je souhaite traiter. Ces fichiers possèdent un nom d'attribution à la place de l'étoile (par exemple toto_islands.csv) et sont présents dans les 4 dossiers mais contiennent des résultats différents que je souhaite regrouper dans un seul fichier total. Je souhaiterais aussi extraire ces noms pour savoir quel fichiers je traite.

Voila ce que j'ai fais :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# dir
islander_dir = "/home/***/Bureau/GI-1/Results/Islander_results"
dimob_dir = "/home/***/Bureau/GI-1/Results/Dimob_results"
gihunter_dir = "/home/***/Bureau/GI-1/Results/GIHunter_results/GI_result_G/"
sigihmm_dir = "/home/***/Bureau/GI-1/Results/SigiHMM_results"
all_gi_dir = "/home/***/Bureau/GI-1/Results/DISG_results/GI_result_DISG"
 
#files
islander = glob.glob(os.path.join(islander_dir, '*_islands*'))
dimob = glob.glob(os.path.join(dimob_dir, '*_islands*'))
gihunter = glob.glob(os.path.join(gihunter_dir, '*_islands*'))
sigihmm = glob.glob(os.path.join(sigihmm_dir, '*_islands*'))
all_gi = glob.glob(os.path.join(all_gi_dir, '*_islands*'))
 
#sort
islander.sort()
dimob.sort()
gihunter.sort()
sigihmm.sort()
all_gi.sort()
 
f = open(total, "a")
 
with open(islander, "r") as f1:
 
--- suite du script ---
et voilà l'erreur que j'obtiens:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
Traceback (most recent call last):
  File "scratch_2.py", line 24, in <module>
    with open(islander, "r") as f1:
TypeError: expected str, bytes or os.PathLike object, not list
Le script fonctionne parfaitement pour un seul fichier et je ne vois pas trop comment y remédier. ..