2009-08-11 7 views
120

मेरे पास वर्तमान में n आकार का पायथन सेट है जहां n> = 0. क्या कोई त्वरित 1 या 2 लाइन पाइथन समाधान करने के लिए है? उदाहरण के लिए, सेट की तरह दिखेगा: लक्ष्यमैं पाइथन सेट से 2 यादृच्छिक आइटम कैसे चुनूं?

fruits = set(['apple', 'orange', 'watermelon', 'grape']) 

ऊपर से 2 यादृच्छिक आइटम लेने के लिए है और यह है कि ऊपर सेट 0, 1 या अधिक आइटम शामिल कर सकते हैं संभव है। उपर्युक्त करने का एकमात्र तरीका यह है कि सेट को एक सूची (म्यूटेबल) में परिवर्तित करना है, जहां से मैं सेट की लंबाई के भीतर 2 यादृच्छिक अद्वितीय अनुक्रमणिका तक पहुंच सकता हूं।

+1

आप 0- या 1-आइटम सूची से आइटम कैसे चुनेंगे? – SilentGhost

+2

निम्नलिखित का ध्यान रखना चाहिए: आयात यादृच्छिक vals = set ([1, 2, 3, 4, 5, 6]) random.sample (vals, min (len (vals), 2)) –

उत्तर

241

random मॉड्यूल का उपयोग करें: प्रतिस्थापन के बिना http://docs.python.org/library/random.html

import random 
random.sample(set([1, 2, 3, 4, 5, 6]), 2) 

इस नमूने दो मानों (ताकि दो मान भिन्न हैं)।

+0

fasteeer , प्रकाश की गति से;) –

+5

वाह, यह आसान दिखता है, मुझे यादृच्छिक दस्तावेज़ को अधिक विस्तार से जांचना होगा। –

+1

और 'set' के साथ भी – SilentGhost

संबंधित मुद्दे