IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

aide fonction aléatoire


Sujet :

Python

  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 23
    Points : 15
    Points
    15
    Par défaut aide fonction aléatoire
    salut, voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    placealeatoire=[reponseA,reponseB,reponseC,reponseD]
    An1=random.randint(0,3)
    Bn1=random.randint(0,3)
    Cn1=random.randint(0,3)
    Dn1=random.randint(0,3)
    placeA=placealeatoire[An1]
    placeB=placealeatoire[Bn1]
    placeC=placealeatoire[Cn1]
    placeD=placealeatoire[Dn1]
    donc je voudrai savoir s'il était possible d'exclure un nombre dans la fonction aléatoire ?
    le but serai par exemple si : An1= reponseC, je voudrai que Bn1 != reponseC.
    En outre je voudrai qu'il soit impossible que An1, Bn1, Cn1 et Dn1 est le même mot.

  2. #2
    Expert éminent

    Avatar de deusyss
    Homme Profil pro
    Expert Python
    Inscrit en
    Mars 2010
    Messages
    1 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Expert Python
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2010
    Messages : 1 659
    Points : 8 442
    Points
    8 442
    Par défaut
    Salut,

    Alors après lecture de la doc officielle, cela ne semble pas possible via la lib random. Tu devra donc passer par une boucle while par exemple

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    a = 0
    while a in (0,5,9):
        a = random.randint(0,10)
    C'est juste un petit code d'exemple pour illustrer. Après il existe peut etre des fonctionnalité supplémentaire à random à côté desquelles je suis passé. Ou bien une librairie plus évoluée.
    "La connaissance appartient à tout le monde" (Film Antitrust)

    Tout le nécessaire pour Python:
    *News/Accueil *Cours/tutoriels *FAQ
    *Forums *Outils dédiés *Mon espace personnel avec mes Articles, Cours et Tutoriels

  3. #3
    Membre du Club
    Homme Profil pro
    Inscrit en
    Février 2013
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2013
    Messages : 37
    Points : 67
    Points
    67
    Par défaut
    Tu peux utiliser random.choice qui choisi un élément dans une séquence. Quand l'élément a été chois, tu le supprimes de la liste.

    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
     
    import random
     
    lst_choix = [0, 1, 2, 3]  # la liste dans laquelle choisir
     
    A = random.choice(lst_choix)
    lst_choix.remove(A)  # enlever ce qui a été choisi de la liste
     
    B = random.choice(lst_choix)
    lst_choix.remove(B)
     
    C = random.choice(lst_choix)
    lst_choix.remove(C)
     
    D = lst_choix[0]  # il ne reste qu'une possibilité
     
    print A, B, C, D
    Tu peux aussi utiliser random.shuffle qui 'mélange' une séquence:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    import random
     
    lst_choix = [0, 1, 2, 3]  # la liste à mélanger
     
    random.shuffle(lst_choix)  # on mélange la liste
     
    A = lst_choix[0]
    B = lst_choix[1]
    C = lst_choix[2]
    D = lst_choix[3]
     
    print A, B, C, D

  4. #4
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2014
    Messages
    23
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2014
    Messages : 23
    Points : 15
    Points
    15
    Par défaut
    Merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. aide fonction tri heapsort (création du tas)
    Par Invité dans le forum C
    Réponses: 6
    Dernier message: 24/11/2009, 00h27
  2. [aide fonction popup.close() ]
    Par viny dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 17/07/2006, 16h41
  3. Aide fonction getopt
    Par makohsarah dans le forum C
    Réponses: 12
    Dernier message: 12/06/2006, 16h02
  4. aide fonction math[racine,cos(),sin(),..]VB6
    Par am.adnane dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 28/12/2005, 18h40
  5. besoin d'aide fonction avec fichier (debutant)
    Par boby61 dans le forum Débuter
    Réponses: 9
    Dernier message: 14/03/2005, 11h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo