2016-06-12 16 views
0

Dieser Code, den ich benutze, ist Teil von etwas größerem, auf dem ich schreibe. In diesem Teil erstelle ich eine zufällige Liste kleinerer Größe aus einer Quellenliste. Gibt es eine Möglichkeit, diesen Zufallslistenersteller x-mal zu durchlaufen und dann die neuen Listen zu speichern (z. B. list1, list2, list3, ..., listx)?Schleife durch einen Zufallslistengenerator

Der Code Ich verwende ist dieses:

positive_classifier = [ 
    positive[i] for i in sorted(
     random.sample(xrange(len(positive)), n_prot_classifier)) ] 

Hier positive ist die Quelle Liste ich Zugriff und n_prot_classifier ist eine Variable, die ich zuvor definiert, dass die Länge der neuen Liste enthält.

+0

Natürlich können Sie dies innerhalb einer for-Schleife ausführen, um es mehrmals zu tun. Ich verstehe nicht ganz, an welchem ​​Punkt Sie Probleme haben. Können Sie bitte genauer sein? –

Antwort

0

Sie können eine Liste von Listen erstellen, indem Sie Ihren Code ein wenig erweitern. Dies erstellt eine Liste mit list_count Listen, die jeweils zufällige Elemente aus positive enthalten.

list_count = 5 
positive_classifier = [ 
    [positive[i] for i in sorted(random.sample(xrange(len(positive)), n_prot_classifier))] 
    for _ in range(list_count) 
] 

Seien Sie die positive_classifier jetzt bewusst eine Liste von Listen, nicht eine einfache Liste vor wie.