Hyperion hat geschrieben:Irgend wie habe ich das Problem immer noch nicht verstanden :K
Wenn irgend etwas zusammengehört, gehört es idR. auch in *eine* Datenstruktur! Wenn Du also Paare von Werten hast, könntest Du z.B. eine Liste von Tupeln bilden und auf dieser dann tatsächlich mit ``random.sample`` arbeiten:
Code: Alles auswählen
pairs = [(1, 2), (2, 4), (1, 5)]
import random
random.sample(pairs, 2)
> [(2, 4), (1, 2)]
ie man soetwas definiert (also eine Variable für die Variable hernimmt), ist mir das zu umständlich. Deine Idee mit dem Pool funktioniert jedenfalls. Danke![/quote]
Kurz zu dem Problem. Ich spiele Pokemon schon seit ich klein bin. Und, falls du es kennst, man kann die Viecher züchten. Das ist wichtig, denn die haben versteckte Werte, die man aber ausrechnen kann. Jeder Wert lässt sich prinzipiell verändern, außer dem verstecken. Daher hat man die stärksten Pokemon, wenn alle versteckten Werte ihren Maximalwert 31 haben. Die Wahrscheinlichkeit dafür ist endlos klein. Aber man kann einen Wert leicht auf 31 bekommen (Chance 1:31). Dann züchtet man ihn weiter. Und so versucht man, alle 6 (meistens reichen schon 5) Werte auf 31 zu bringen. Beim Züchten werden hierbei i.d.R 3 Werte von den beiden Elternteilen vererbt. Da beide Eltern je 6 Werte haben, wird also zu Beginn aus 12 Werten zufällig ausgewählt. Das ist dann der 1. vererbte Wert. Dann wird der Gegenwert aussortiert (Sprich, wenn Wert 5 der Mutter vererbt wird, kann nicht auf Wert 5 des Vaters vererbt werden). Der 2. Wert wird nun nur noch aus 10 gewählt. Der 3. dann nur noch aus 8. Da das Pokemon-Baby aber 6 Werte haben soll, müssen die restlichen 3 zufällig generiert werden.
Nun, ich habe das ganze schon auf Papier ausgerechnet. Aber weil ich nie 100%ig sicher bin, ob meine Rechnungen stimmen und ich mal wieder Lust auf Python hatte, will ich mir nun dieses Programm schreiben. Ich bin um ehrlich zu sein sogar schon fertig, war ja kein großer Aufwand. Da es für mich halt ohne Paare leichter war, habe ich lieber so gearbeitet.
PS: Wenn du das Problem anhand meiner Erklärung nicht verstehst, siehe unter "
http://pokewiki.de/DV"