2016-11-05 4 views
-2

ich mehrere zufälligen Kombinationen von Zeichenkette aus einer Liste extrahieren möchte und die Ergebnisse in einem CSV- oder TXT-Python Stichproben aus der Liste und den Export in txt

mit diesem Code ich die erste Kombination extrahieren. Ist es möglich, eine Schleife für 10 Extraktionen ohne Ersatz hinzuzufügen, und jede Extrahierung wird eine Zeile in einem CSV sein?

import random 

items = ['here', 'are', 'some', 'strings', 'of', 
    'which', 'we', 'will', 'select', 'one'] 


rand_items = [items[random.randrange(len(items))] 
      for item in range(7)] 

print(rand_items) 
+0

Ja, Sie können eine for-Schleife schreiben, um etwas zehn Mal zu tun. Hast du das wirklich probiert? Was ist passiert? – jonrsharpe

+0

Ich vergaß zu erwähnen, ohne Ersatz, 7 einzigartige Zeichenfolgen – progster

+0

* "Haben Sie das tatsächlich versucht? Was ist passiert?" * Wie auch können Sie sieben Artikel ohne Ersatz zehn Mal aus einer Liste von zehn Elementen auswählen? – jonrsharpe

Antwort

0
import csv 
import random 

items = set(['here', 'are', 'some', 'strings', 'of', 'which', 'we', 'will', 'select', 'one']) 
with open('file.csv', 'wb') as csvfile: 
    spamwriter = csv.writer(csvfile, delimiter=',') 
    for _ in range(10): 
     spamwriter.writerow(random.sample(items, 7)) 

random.sample (Population, k) Return a k Länge Liste von einzigartigen Elementen aus der Population Sequenz ausgewählt. Wird für Stichproben ohne Ersatz verwendet.

+0

Ich habe vergessen, ohne Ersatz zu erwähnen. das war das Problem, ich will keine Wiederholungen wie wir, wir, von, von, welche, von, von – progster