Branches de langues et arborescence
Fermé
RidaNafir
-
8 nov. 2019 à 14:41
yg_be Messages postés 23297 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 octobre 2024 - 8 nov. 2019 à 22:24
yg_be Messages postés 23297 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 29 octobre 2024 - 8 nov. 2019 à 22:24
A voir également:
- Branches de langues et arborescence
- Télécharger traducteur toutes les langues gratuit sans internet - Télécharger - Traduction
- Changer la langue de windows 10 - Guide
- Branchement enceinte fil rouge et noir - Forum Musique / Radio / Clip
- Brancher baffle avec fil noir et rouge racordé en jack sur pc ? - Forum Enceintes / HiFi
- Netflix change de langue tout seul - Forum TV & Vidéo
3 réponses
Reivax962
Messages postés
3672
Date d'inscription
jeudi 16 juin 2005
Statut
Membre
Dernière intervention
11 février 2021
1 011
8 nov. 2019 à 14:50
8 nov. 2019 à 14:50
Bonjour,
Essayer de comprendre un code Python présenté sans les indentations, c'est complètement vain.
Pourriez-vous modifier votre message pour utiliser les balises <code python > afin d'avoir la coloration syntaxique ? (Les balises doivent encadrer le code source, et on les trouve sur le bouton à côté des boutons de mise en forme B I S au dessus de la zone de saisie)
Merci,
Xavier
Essayer de comprendre un code Python présenté sans les indentations, c'est complètement vain.
Pourriez-vous modifier votre message pour utiliser les balises <code python > afin d'avoir la coloration syntaxique ? (Les balises doivent encadrer le code source, et on les trouve sur le bouton à côté des boutons de mise en forme B I S au dessus de la zone de saisie)
Merci,
Xavier
yg_be
Messages postés
23297
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
29 octobre 2024
Ambassadeur
1 549
8 nov. 2019 à 16:38
8 nov. 2019 à 16:38
bonjour, pourrais-tu donner des noms explicites à tes variables, ajouter des commentaires pour expliquer ce que tu penses que ton programme fait, et ajouter des print() pour vérifier et nous montrer ce que fait ton programme?
le résultat que tu donnes en exemple, est-ce le contenu d'un fichier? si oui, lequel?
peux-tu également donner le contenu des fichiers lus par ton programme?
le résultat que tu donnes en exemple, est-ce le contenu d'un fichier? si oui, lequel?
peux-tu également donner le contenu des fichiers lus par ton programme?
<gras>Bonjour, en fait ma mission est de normaliser une liste de langues et de branches de langues qui prennent le format html, il prend chaque langue et il la met sous la branche elle appartient, sauf que j'ai pas mal de cas où une langue se répete plusieurs fois sous plusieurs branches différentes : par exemple supposant que le programme m'affiche que le Français appartient à la famille indoueuropéénne et la famille sémitique aussi ce qui est faux. j'arrive pas a modifier dans ce code afin qu'il élémine les réseultats dupliqués et me rend un résultats correcte. j'ai fait le code suivant :
from bs4 import BeautifulSoup
import json
import os
"""Trouver les langues d'une branche"""
<os.chdir("projet_Embarki/Embarki-Data/") # le dossier qui contient les fichiers html
directory_name = "projet_Embarki/Embarki-Data/Branches/"
listBranches = os.listdir("Branches/")
file1=open("text.txt","w")
os.chdir("Branches/")
dicctionnaire={}
for i in listBranches:
soup=BeautifulSoup(open(i).read(),"lxml")
finder=soup.find_all("a")
dictionnaire[i.replace(".html","")]={j.string for j in finder if j["href"].endswith("html")} # ce code est pour trouver un fichier qui s'appelle (href) et le modifier par un fichier que son nom se termine par html (pour que le programme puisse le trouver)
dictionnaire2={}
for i,j in dicctionnaire.items():
for a,b in dicctionnaire.items():
if j.issubset(b) and a!=i:
#print(i,a)
if a not in dicctionnaire2:
dicctionnaire2[a]=[i]
else: dicctionnaire2[a].append(i)
dictionnaire3={}
for i,j in dicctionnaire2.items():
dicctionnaire3[i]=[{a:list(dico[a]) for a in j}]
file1.write("%s\n"%(i))
for k in j:
file1.write("\t%s\n\t\t%s\n"%(k,"\n\t\t".join(dicctionnaire[k])))
os.chdir("..")
monFichier= open("branches.json", "w")
json.dump(dicctionnaire3,monFichier)
monFichier.close()
file1.close() />
en fin j'ai eu un réslutat comme suite :
Austronesian : # branche de langue qui contient :
Oceanic : #sous branche qui contient :
HAWAIIAN : #langue
Oceanic: # ici il considere cette sous branche comme une branche:
Austronesian : #le contraire du 1er resultat
HAWAIIAN: #langue
East Malayo-Polynesian: #une branche
Austronesian: #sous branche
HAWAIIAN : une langue
Oceanic: #branche
HAWAIIAN : #cette langue par ex se répète pour la 4eme fois
aidez moi svp et j'espère que j'ai bien expliqué !!
merci :)
from bs4 import BeautifulSoup
import json
import os
"""Trouver les langues d'une branche"""
<os.chdir("projet_Embarki/Embarki-Data/") # le dossier qui contient les fichiers html
directory_name = "projet_Embarki/Embarki-Data/Branches/"
listBranches = os.listdir("Branches/")
file1=open("text.txt","w")
os.chdir("Branches/")
dicctionnaire={}
for i in listBranches:
soup=BeautifulSoup(open(i).read(),"lxml")
finder=soup.find_all("a")
dictionnaire[i.replace(".html","")]={j.string for j in finder if j["href"].endswith("html")} # ce code est pour trouver un fichier qui s'appelle (href) et le modifier par un fichier que son nom se termine par html (pour que le programme puisse le trouver)
dictionnaire2={}
for i,j in dicctionnaire.items():
for a,b in dicctionnaire.items():
if j.issubset(b) and a!=i:
#print(i,a)
if a not in dicctionnaire2:
dicctionnaire2[a]=[i]
else: dicctionnaire2[a].append(i)
dictionnaire3={}
for i,j in dicctionnaire2.items():
dicctionnaire3[i]=[{a:list(dico[a]) for a in j}]
file1.write("%s\n"%(i))
for k in j:
file1.write("\t%s\n\t\t%s\n"%(k,"\n\t\t".join(dicctionnaire[k])))
os.chdir("..")
monFichier= open("branches.json", "w")
json.dump(dicctionnaire3,monFichier)
monFichier.close()
file1.close() />
en fin j'ai eu un réslutat comme suite :
Austronesian : # branche de langue qui contient :
Oceanic : #sous branche qui contient :
HAWAIIAN : #langue
Oceanic: # ici il considere cette sous branche comme une branche:
Austronesian : #le contraire du 1er resultat
HAWAIIAN: #langue
East Malayo-Polynesian: #une branche
Austronesian: #sous branche
HAWAIIAN : une langue
Oceanic: #branche
HAWAIIAN : #cette langue par ex se répète pour la 4eme fois
aidez moi svp et j'espère que j'ai bien expliqué !!
<code><code></code></code>
merci :)
yg_be
Messages postés
23297
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
29 octobre 2024
1 549
8 nov. 2019 à 22:17
8 nov. 2019 à 22:17
comme tu peux le voir, le code que tu as posté est illisible. tu n'as pas correctement utilisé les balises de code.
tu n'as que très partiellement appliqué mes suggestions en #2.
tu n'as que très partiellement appliqué mes suggestions en #2.
yg_be
Messages postés
23297
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
29 octobre 2024
1 549
>
Ridanafir
8 nov. 2019 à 22:24
8 nov. 2019 à 22:24
je te suggère de prendre le temps de maîtriser les balises de code sur ce site.
tu n'as que très partiellement appliqué mes suggestions en #2.
tu n'as que très partiellement appliqué mes suggestions en #2.