#on utilise une structure dictionnaire où les clés sont les numéros de livre et la valeur
#associée un dictionnaire dont les clés sont les poèmes P1 ,P2,...
contemplations ={ '1' : { 'P1': 'A ma fille ' , 'P7': " le poete s'en va" ,'P4' :'titre ..' ,\
'P15' :'' ,'P16': '' ,'P20' :'' , 'P25':''} ,
'2' : { 'P12' :'titre du poeme..' ,'P13': '..' ,'P14' :'..' ,'P17' :'' , 'P23':'',\
'P26' :'' ,'P27':''},
'3' :{ 'P1' :' ' ,'P6' :'' ,'P10' : '..' , 'P11': ' '},
'4':{'P2':'' ,'P6':'' ,'P10':'' ,'P14':'..' } ,
'5' : {'P2': ' ','P4':' ..' ,'P10': ' ..' ,'P19':' ..' },
'6' :{'P1' :'' ,'P2' : '..' ,'P3' : '..','P4' : '', 'P5' : '','P7' : '',\
'P11' : 'titre..' , 'P12' : 'titre..', 'P14' : '', 'P18' : 'titre..'}
def afficher_poeme(nomfichier):
'''
entrée: un fichier au format .json
Par exemple L3P1.json faisant référence
au livre 3 , poème 1
'''
print(nomfichier)
p="contemplations/"+nomfichier
with open(p, "r") as f:
data = json.load(f)
for strophe in data.values():
#on transforme la chaîne strophe en liste de "vers" avec la méthode split
strophe=strophe.split('|')
print()
for vers in strophe:
print(vers)
def chercher_occurrence(poeme,mot):
'''
entree:- poeme(str) est le nom d'un fichier json
désignant un poème des contemplations
- mot(str)est le mot qu'on cherche
commentaire : c'est une version qui peut être
améliorée notamment pour éviter d'afficher les
cas où mot fait partie d'un autre mot du vers (comme 'ver' et 'verte')
'''
p="contemplations/"+poeme
with open(p, "r") as f:
data = json.load(f)
#chercher le nombre d'occurrence du mot "enfant" dans le poème "L1P1"
occurrence = 0
for strophe in data.values():
strophe=strophe.split('|') #on transforme la chaîne
# en liste de vers
for vers in strophe:
occurrence+=vers.count(mot) #la méthode de chaine count
#pour compter le nombre d'occurrence de la chaine mot
return occurrence