60 of 151 menu

วิธี sample ของโมดูล random

วิธี sample ของโมดูล random ส่งคืนตัวอย่างองค์ประกอบที่สุ่มจาก ลำดับ ในพารามิเตอร์แรก ของเมธอด เราระบุลำดับ ใน พารามิเตอร์ที่สอง - จำนวนองค์ประกอบ ที่เราต้องการเลือกแบบสุ่ม

ในพารามิเตอร์ที่มีชื่อที่ไม่บังคับที่สาม counts เราสามารถกำหนดรายการ องค์ประกอบสำหรับทำซ้ำได้ สิ่งนี้ช่วยให้ เพิ่มโอกาสในการเลือกองค์ประกอบที่กำหนด โปรดทราบว่า พารามิเตอร์ที่สามของเมธอดถูกเพิ่มเฉพาะ ตั้งแต่ Python เวอร์ชัน 3.9 เป็นต้นไป

ไวยากรณ์

import random random.sample(ลำดับ, จำนวนองค์ประกอบ, [counts=การทำซ้ำ])

ตัวอย่าง

มาดึงองค์ประกอบแบบสุ่มสามรายการจาก รายการกัน:

lst = [1, 2, 3, 4, 5] print(random.sample(lst, 3))

ผลลัพธ์จากการรันโค้ด:

[2, 1, 5]

ตัวอย่าง

มาลองสุ่มตัวอย่าง องค์ประกอบแบบสุ่มจากทูเพิลกัน:

tpl = (1, 2, 3, 4, 5) print(random.sample(tpl, 2))

ผลลัพธ์จากการรันโค้ด:

[3, 2]

ตัวอย่าง

ยังสามารถเลือกองค์ประกอบจาก ลำดับที่ถูกสร้างโดย ฟังก์ชัน range ได้:

print(random.sample(range(0, 10), 3))

ผลลัพธ์จากการรันโค้ด:

[0, 8, 9]

ตัวอย่าง

ตอนนี้มาลองนำรายการและใช้ พารามิเตอร์ counts กำหนดการทำซ้ำ สำหรับแต่ละองค์ประกอบจากรายการ ในกรณีของเรา ให้องค์ประกอบแรกทำซ้ำ สองครั้ง ที่สอง - สามครั้ง และที่สาม - สี่ ครั้ง นอกจากนี้ยังจำเป็นต้องระบุชื่อพารามิเตอร์ k สำหรับแสดงจำนวนองค์ประกอบ:

lst = [1, 2, 3] print(random.sample(lst, counts=[2, 3, 4], k=3))

โค้ดนี้เทียบเท่ากับสิ่งต่อไปนี้:

lst = [1, 1, 2, 2, 2, 3, 3, 3, 3] # รายการจริง ๆ เป็นแบบนี้ print(random.sample(lst, 3))

ตัวอย่าง

ตอนนี้มาลองดึงองค์ประกอบ จากเซ็ตกัน:

st = {1, 2, 3, 4, 5} print(random.sample(st, 2))

จะส่งกลับข้อผิดพลาดต่อไปนี้:

[5, 2] DeprecationWarning: Sampling from a set deprecated since Python 3.9 and will be removed in a subsequent version. print(random.sample(st, 2))

เนื่องมาจากตั้งแต่เวอร์ชัน Python 3.9 ไม่ได้เตรียมความสามารถ ในการสุ่มตัวอย่างจากเซ็ตไว้

ดูเพิ่มเติม

  • เมธอด choice ของโมดูล random,
    ซึ่งส่งคืน องค์ประกอบแบบสุ่มจากลำดับ
  • เมธอด random ของโมดูล random,
    ซึ่งส่งคืน ตัวเลขสุ่มเทียม
ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ