Bonjour je doit rendre un programme en python nécessitant de mélanger aléatoirement une liste mais la commande random.shuffle(l) ne fonctionne pas si qqn aurait une solution je serai ravi de la connaitre.
merci
est_trie([6,8,2,4,8,66,5,1,22,33,66,88,458,28,7])
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "G:\tp 6.py", line 87, in est_trie
random.shuffle(L)
AttributeError: 'builtin_function_or_method' object has no attribute 'shuffle'
Oups le copié collé de python a "un peu " foutu la merde.
Je connais pas le python, mais vu le message il faut peut être importer une bobliothèque, en regardant vite fait il semblerai qu'il faille écrire
import random
en début de code pour accéder à ces fonctions.
j'ai déjà importer la bibliothèque et les ballises <> c'est pas pour le html et le web design en général?
Le 19 janvier 2020 à 13:31:09 DocBrindzing37 a écrit :
j'ai déjà importer la bibliothèque et les ballises <> c'est pas pour le html et le web design en général?
Sur le forum c’est juste pour faire apparaître ton code avec la bonne indentation, ect... ça permet de copier coller et tester ce que tu as fait plus facilement.
Mais c’est le contenu du debuggeur que tu as poster non ?
Je pensais que c’était ton code, donc oublie se que j’ai dit x)
Edit : tu peux poster ton code par contre, ça sera plus facile pour t’aider
il peut y avoir d'autre problème mais c'est la première que je connais.
<#ex10
from random import*
def est_trie(L) :
l=L
x=len(l)
l2=l
random.shuffle(L)
for j in range (x):
for i in range (x-1):
if l[i]>l[i+1]:
l[i],l[i+1]=l[i+1],l[i]
for k in range (x-1):
if l2[k]<l2[k+1]:
l2[k],l2[k+1]=l2[k+1],l2[k]
while l!=L or l!=l2:
random.shuffle(L)
print(L)
if l==L or l==l2:
print("trier")
print(L)>
<>from random import*
def est_trie(L) :
l=L
x=len(l)
l2=l
random.shuffle(L)
for j in range (x):
for i in range (x-1):
if l[i]>l[i+1]:
l[i],l[i+1]=l[i+1],l[i]
for k in range (x-1):
if l2[k]<l2[k+1]:
l2[k],l2[k+1]=l2[k+1],l2[k]
while l!=L or l!=l2:
random.shuffle(L)
print(L)
if l==L or l==l2:
print("trier")
print(L)<>
Je crois que t’as pas compris pour les balises
Soit tu cliques sur l’icône <> qui les ajoute automatiquement, soit tu mets tout ton code entre <code> <//code> (Avec un seul slash pour le deuxième)
#ex10
from random import*
def est_trie(L) :
l=L
x=len(l)
l2=l
random.shuffle(L)
for j in range (x):
for i in range (x-1):
if l[i]>l[i+1]:
l[i],l[i+1]=l[i+1],l[i]
for k in range (x-1):
if l2[k]<l2[k+1]:
l2[k],l2[k+1]=l2[k+1],l2[k]
while l!=L or l!=l2:
random.shuffle(L)
print(L)
if l==L or l==l2:
print("trier")
print(L)
Le problème vient de l'import(comme l'a dit Shiba_the_Inu plus haut) , j'ai plus d'erreur comme ça :
#ex10
import random
def est_trie(L) :
l=L
x=len(l)
l2=l
random.shuffle(L)
for j in range (x):
for i in range (x-1):
if l[i]>l[i+1]:
l[i],l[i+1]=l[i+1],l[i]
for k in range (x-1):
if l2[k]<l2[k+1]:
l2[k],l2[k+1]=l2[k+1],l2[k]
while l!=L or l!=l2:
random.shuffle(L)
print(L)
if l==L or l==l2:
print("trier")
print(L)
liste = [6,8,2,4,8,66,5,1,22,33,66,88,458,28,7]
print(liste)
est_trie(liste)
Je m'en suis rendu compte en td mais merci quand même.