คุณสามารถแปลงรายการเป็นชุดใน Python
เครดิตรูปภาพ: Poike / iStock / GettyImages
รายการและชุดใน Python ทั้งสองประกอบด้วยกลุ่มของรายการ แต่มีความแตกต่างที่สำคัญระหว่างทั้งสอง โดยเฉพาะอย่างยิ่ง ชุดมีประโยชน์สำหรับการดำเนินการที่หลากหลาย เช่น สหภาพและทางแยก ในขณะที่รายการมี การดำเนินการทางคณิตศาสตร์น้อยลงแต่มีประโยชน์สำหรับการค้นหารายการเฉพาะ – โดยเฉพาะอย่างยิ่งกับรายการที่ซ้ำกัน – และการจัดระเบียบ ข้อมูล. ด้วยเหตุผลหลายประการ คุณอาจต้องแปลงรายการเป็นชุดใน Python และมีฟังก์ชันง่ายๆ ที่คุณสามารถใช้ทำสิ่งนี้ได้
รายการ Python และชุดอธิบาย
ความแตกต่างที่สำคัญที่สุดระหว่างรายการและชุดใน Python ก็คือรายการสามารถมีองค์ประกอบที่ซ้ำกันได้ ในขณะที่ชุดประกอบด้วยองค์ประกอบที่ไม่ซ้ำกันเท่านั้น ตัวอย่างเช่น หากคุณมีรายการคะแนนการทดสอบที่กำหนดเป็น "scores=[14, 20, 13, 20, 15]" รายการ บอกคุณทุกค่า แต่ถ้าคุณแปลงเป็นชุด มันจะลบค่าที่ซ้ำกันออกและเหลือ {14, 20, 13, 15}.
วีดีโอประจำวันนี้
ข้อแตกต่างอีกประการหนึ่งคือวงเล็บเหลี่ยมใช้สำหรับรายการ ในขณะที่วงเล็บปีกกาใช้สำหรับชุด สิ่งต่าง ๆ มีความซับซ้อนเพียงเล็กน้อยจากข้อเท็จจริงที่ว่าพจนานุกรม Python ใช้วงเล็บปีกกา แต่มีแต่ละรายการประกอบด้วยค่าและ "คีย์" ที่คั่นด้วยเครื่องหมายทวิภาค
สิ่งสำคัญคือต้องจำไว้ว่าคุณสามารถใช้สตริง เลขจำนวนเต็ม ทุ่น หรืออ็อบเจกต์อื่นๆ เป็นส่วนหนึ่งของชุดหรือรายการ และสามารถผสมสิ่งเหล่านี้ในชุดหรือรายการเดียวกันได้ เช่นเดียวกับที่คุณมีชุดตัวเลขใน Python คุณสามารถสร้างชุดสตริง Python ได้
แปลงรายการเป็นชุด
ขั้นตอนการแปลงรายการเป็นชุดใน Python นั้นตรงไปตรงมา ขั้นแรก คุณกำหนดรายการในลักษณะที่เหมาะสมสำหรับข้อมูลที่อยู่ในนั้น ตัวอย่างเช่น สมมติว่าคุณต้องการกำหนดรายชื่อ คุณอาจเขียน ชื่อ=['ลี' 'ไมค์' 'เจมี่' 'ไมค์' 'ซาร่าห์'] สังเกตเครื่องหมายวงเล็บเหลี่ยม เครื่องหมายอัญประกาศรอบสตริง (ชื่อ) และเครื่องหมายจุลภาคคั่นแต่ละรายการ
หากต้องการแปลงรายการนี้เป็นชุด ให้ใช้คำสั่ง ชุด()ที่คุณใส่ชื่อรายการที่คุณต้องการแปลงระหว่างวงเล็บ ในกรณีนี้ คุณสามารถเขียน ชุด (ชื่อ) เพื่อแปลงชื่อในรายการเป็นชุดและคุณสามารถกำหนดตัวแปรเช่น "uniquenames" และแสดงผลโดยใช้ พิมพ์ (ชื่อเฉพาะ)ซึ่งเทียบเท่ากับ พิมพ์ (ชุด (ชื่อ)) แต่เรียบร้อยกว่า คุณยืนยันว่าได้ดำเนินการอย่างถูกต้องโดยสังเกตว่าผลลัพธ์ใช้วงเล็บปีกกา และ "Mike" จะรวมเพียงครั้งเดียว
รหัสทั้งหมดมีลักษณะดังนี้:
ชื่อ=['ลี' 'ไมค์' 'เจมี่' 'ไมค์' 'ซาร่าห์']
uniquenames=set (ชื่อ)
พิมพ์ ('ชื่อเฉพาะ:', ชื่อเฉพาะ)
ในกรณีนี้ มีการเพิ่ม "ชื่อเฉพาะ:" ลงในเอาต์พุตเพื่อวัตถุประสงค์ในการนำเสนอ
Python: ตั้งค่าเป็นรายการ Conversion
คุณยังสามารถเรียกใช้การแปลงเดียวกันในทิศทางตรงกันข้าม และโดยพื้นฐานแล้วกระบวนการจะเหมือนกัน ยกเว้นว่าคุณใช้ รายการ() คำสั่งบนชุดมากกว่าวิธีอื่น ๆ ซึ่งหมายความว่าคุณต้องมีชุดเริ่มต้น ซึ่งคุณสามารถกำหนดได้อย่างง่ายดายโดยเลือกตัวแปร เช่น "big_set" แล้วเพิ่มเนื้อหา โดยคั่นด้วยเครื่องหมายจุลภาคและในวงเล็บปีกกา คุณสามารถเขียน big_set={1, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 17} เพื่อกำหนดชุดของจำนวนเต็มหรือค่าอื่นๆ
ในการแปลงเป็นรายการ คุณต้องกำหนดตัวแปร (เช่น "big_list") และใช้ รายการ() คำสั่งดังนั้นคุณพิมพ์บางอย่างเช่น big_list=list (big_set) แล้วก็ พิมพ์ (big_list) เพื่อแสดงผล ดังนั้นรหัสเต็มคือ:
big_set={1, 3, 4, 5, 7, 8, 9, 11, 12, 14, 15, 17}
big_list=list (big_set)
พิมพ์ (big_list)
กรณีนี้ไม่ได้ตั้งชื่อให้กับรายการ ดังนั้นจึงส่งคืนเฉพาะรายการเท่านั้น โปรดทราบว่าหากคุณแปลงรายการเป็นชุดแล้วย้อนกลับอีกครั้ง คุณจะสูญเสียมูลค่าที่เกิดซ้ำในการแปลงครั้งแรก และจะไม่กลับมาอีก