Aller au contenu

Exo Python Basique


angelV

Messages recommandés

Posté(e)

Bonjour à tous,

merci encore pour tout l'aide que j'ai obtenue grâce à vous, je commence petit à petit à comprendre comment fonctionne Python...

Cependant, j'ai un nouveau petit soucis, chaque semaine mon professeur nous donne des exos et celui-ci est assez simple mais je ne comprends pas pq mon script m'envoie un message d'erreur...

J'aurai besoin donc d'un peu d'aide pour la partie B et la partie C. Je donne mon script. Merci d'avance, Cordialement.1175854902_Monpb.thumb.png.4e31900feba33769b73b09a5305a62a0.png1175854902_Monpb.thumb.png.4e31900feba33769b73b09a5305a62a0.png

Exo 2 P1.png

Exo 2 P2.png

  • E-Bahut
Posté(e)

Bonjour,

Donc, pour ton script, il y a deux problèmes

* nb_visites[indice_page]=0+1 n'augmenterait pas nb_visites[indice_page] mais le mettrait systématiquement à 0+1, soit 1. Il faut écrire nb_visites[indice_page]=nb_visites[indice_page]+1

* mais le problème fondamental est là  : indice_page=choice(hyperliens) retourne un des éléments de la liste hyperliens alors que indice_page doit être un entier. Moi, je ne vois qu'une possibilité, c'est d'oublier pour le moment la liste hyperliens et d'écrire simplement indice_page=choice([0,1,2,3,4,5]). Si nécessaire, on pourra afficher ensuite hyperliens[indice_page].

Pour le moment, c'est tout !

P.S.1 : En plus des photographies, dans le cas où tu évoques un script, pourrais-tu aussi faire une copie du script sous forme de fichier texte. Ça m'éviterait à chaque fois de tout retaper, car je teste systématiquement les modifications que je te suggère.

P.S.2 : Pour D, j'ai [0,4] pas [0,5].

  • E-Bahut
Posté(e)

Après réflexion (la nuit porte conseil !), ma modification n'était pas correcte car elle choisit simplement un des 6 ensemble de chemins possibles, pas la page de destination. J'ai essayé ceci

 indice_page=choice(choice(hyperliens))

qui retourne bien un des numéros de pages.

Je pense également que, comme on est censé partir de la page A, il faut initialiser la variable nb_visites  ainsi : [1,0,0,0,0,0] et ne faire que NOMBRE_ITERATIONS-1 boucles. Mais là, sans garantie !

 

Tu regardes et tu commentes ?

  • E-Bahut
Posté(e)

Toujours après réflexion, je pense qu'il faut à chaque fois repartir de la page précédente, ce qui donnerait en particulier

indice_page=choice(hyperliens[indice_page]) pour que le choix initial ait une influence dans l'optique de la suite de l'énoncé
nb_visites[indice_page]=nb_visites[indice_page]+1

Par contre, je laisserais

nb_visites=[0,0,0,0,0,0]

for etape in range (NOMBRE_ITERATIONS):

 

 

Posté(e)

Bonjour,

alors j'ai essayé vos premiers script avec des modifs de ma part mais ça n'a pas marché...

Votre dernier message présente par contre des lignes de codes très convaincant.

Je vais retravailler tout ça...

Merci pour l'aide, je vais tenter de faire la partie C.

  • E-Bahut
Posté(e)

OK, pour info, voilà ma dernière version pour la première partie.

page_rank1.py

Deux remarques :

* J'ai pris 23 itérations pour que le calcul des fréquences donne des résultats à rallonge, pour pouvoir les arrondir à 3 chiffres après la virgule.

* Je n'ai pas trouvé de truc simple pour écrire la variable "popularités", d'où ce truc à rallonge que tu sauras peut-être (surement ?) simplifier.

 

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...
spam filtering
spam filtering