Pythonban hogyan lehet a random.sample kiválasztás parancsnál kizárni bizonyos feltételnek megfelelő tagokat a kiválasztásból?
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Nemár, ez rohadt egyszerű: addig választol ki egy random elemet, amíg megfelelőt nem találsz. Ehhez a random függvénynek semmit köze. Ez nem megy?
(BTW ehhez nem a random.sample(), hanem random.choice() ajánlott használni.)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Bár csak nagyon konkrét esetekre, és rövid listával ideális, de én inkább visszafelé játszanám el.
Ne kihagyja, hanem ha azt kapja keressen mást. Bár már régen használtam Python-t (más irányba mentem), a 2-esben erre még a logikai tartalomellenőrzéses megoldás volt a szimpatikus. A Python3-ban nem tudom milyen módok vannak még rá.
List = [0,1,2,3,4,5,6,7,8,9]
sampleList = random.sample(List, k=1)
while 2 or 7 in sampleList:
sampleList = random.sample(List, k=1)
Tehát azt mondod, hogy egészen addig, amíg a sampleList tartalmazza a 2-t vagy a 7-et, randomizálja újra.
A "2 or 7" helyére természetesen úgy írod meg a kivételeket, ahogy akarod.
Emellett annyit még hozzátennék, ha tudod, hogy biztosan csak egész számaid lesznek, és csak egyet kell kiválasztanod, akkor a random.randint() jobb megoldás, mint a random.sample().
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!