CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Generer un vecteur aleatoire avec Python

Canito_91
Canito_91
Niveau 10
30 juin 2019 à 20:57:30

Salut les gars c'est mon dernier topic Python :rire: je suis vraiment nul mais bon

Bon alors voilà on a 4 vecteurs : (1,0) , (0,1) , (-1,0) et (0,-1)

Chacun de ces vecteurs a une probabilité 1/4 de sortir (logique)

Et il faut faire une procédure qui retourne au hasard un de ces vecteurs

Comment on fait ?

Canito_91
Canito_91
Niveau 10
30 juin 2019 à 21:04:55

import numpy as np
from numpy.random import rand, randint

Les bibliotheques que j'ai importé

blackapplex
blackapplex
Niveau 10
30 juin 2019 à 21:10:18

Tu as random.choice :ok:
A noter que tu aurais surement pû trouver ça via une recherche stackoverflow/google :hap: ( "python choosing random element in a list" :d) j'ai pas besoin de le tapper pour savoir que ça va donner la réponse :noel: )

Message édité le 30 juin 2019 à 21:10:33 par blackapplex
Canito_91
Canito_91
Niveau 10
30 juin 2019 à 22:18:10

Le 30 juin 2019 à 21:10:18 blackapplex a écrit :
Tu as random.choice :ok:
A noter que tu aurais surement pû trouver ça via une recherche stackoverflow/google :hap: ( "python choosing random element in a list" :d) j'ai pas besoin de le tapper pour savoir que ça va donner la réponse :noel: )

Je vois pas trop comment utiliser random.choice dans mon cas...

Canito_91
Canito_91
Niveau 10
30 juin 2019 à 22:21:21

En plus je veux que 4 vecteurs possibles au bout : (1,0) (0,1) (-1,0) ou (0,-1)

Pas de (1,1) ou (0,0) par exemple

Canito_91
Canito_91
Niveau 10
30 juin 2019 à 22:36:46

OK je pense avoir trouver un truc simple

A=[0,1]
B=[1,0]
C=[0,-1]
D=[-1,0]

def un_pas():
a=rand()
if 0<=a<=0.25:
print(A)
if 0.25<=a<=0.5:
print(B)
if 0.5<=a<=0.75:
print(C)
if 0.75<=a<=1:
print(D)

lokilok
lokilok
Niveau 17
30 juin 2019 à 22:42:20

OK je pense avoir trouver un truc simple

Le prend pas mal mais je vois difficilement comment faire plus compliqué.

blackapplex t'a donné la solution la plus simple, tu mets tes choix dans une liste et tu choisis un élément au hasard de cette dernière.

Message édité le 30 juin 2019 à 22:42:48 par lokilok
Canito_91
Canito_91
Niveau 10
30 juin 2019 à 22:47:04

Le 30 juin 2019 à 22:42:20 lokilok a écrit :

OK je pense avoir trouver un truc simple

Le prend pas mal mais je vois difficilement comment faire plus compliqué.

blackapplex t'a donné la solution la plus simple, tu mets tes choix dans une liste et tu choisis un élément au hasard de cette dernière.

D'accord mais dans mon cas j'utilise comment le choice ?

TechnoForce3
TechnoForce3
Niveau 39
30 juin 2019 à 23:39:40

https://docs.scipy.org/doc/numpy/reference/generated/numpy.random.choice.html
3ème exemple.
Tu peux donc faire :
np.random.choice([1,0,-1], 2, False)
Le seul cas problématique avec cette ligne est le -1,1. Soit tu le gère à la main en mettant une des deux valeurs au hasard à 0, soit il y a une autre méthode que je connais pas. J'ai jamais utilisé choice, j'ai juste lu la doc et testé les outputs.

Message édité le 30 juin 2019 à 23:41:33 par TechnoForce3
Batora
Batora
Niveau 10
01 juillet 2019 à 02:52:40
from random import choice

vecteur = choice([(1,0) , (0,1) , (-1,0),(0,-1)])
Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment