จัดเรียงพจนานุกรมตามค่า Python
เผยแพร่แล้ว: 2023-01-25Python เป็นภาษาโปรแกรมยอดนิยมที่สามารถใช้สร้างเว็บแอปพลิเคชันบนเซิร์ฟเวอร์ สามารถใช้ในการพัฒนาเวิร์กโฟลว์ควบคู่ไปกับซอฟต์แวร์ นอกจากการเชื่อมต่อระบบฐานข้อมูลแล้ว Python ยังสามารถอ่านและจัดการไฟล์ได้อีกด้วย สามารถออกแบบโปรแกรมเพื่อแก้ปัญหาทางคณิตศาสตร์ที่ซับซ้อนและจัดการข้อมูลขนาดใหญ่ได้ ช่วยให้การพัฒนาซอฟต์แวร์พร้อมสำหรับการผลิตและการสร้างต้นแบบอย่างรวดเร็ว
มีข้อมูลดั้งเดิมหลายประเภทใน Python เช่น พจนานุกรม ชุด รายการ ทูเพิล เป็นต้น ภาษาโปรแกรมยอดนิยมนี้ยังรวมโมดูลคอลเลกชันที่มีโครงสร้างข้อมูลเฉพาะ เช่น deque, ChainMap เป็นต้น ประเภทข้อมูลเหล่านี้มีฟังก์ชันที่สร้างโค้ด Python มีประสิทธิภาพมากขึ้นและด้วยเหตุนี้จึงเป็นเรื่องง่ายสำหรับผู้ใช้ที่จะทำงานร่วมกับพวกเขา ประเภทข้อมูลพจนานุกรมใน Python มีฟังก์ชันที่กำหนดไว้ล่วงหน้าหนึ่งฟังก์ชันที่เรียกว่าฟังก์ชันการเรียงลำดับ ให้เราหารือเกี่ยวกับการเรียงลำดับของพจนานุกรม Python ตามค่า
สารบัญ
พื้นฐานของประเภทข้อมูล Python:
การจัดหมวดหมู่หรือการจำแนกประเภทของรายการข้อมูลใน Python เรียกว่าประเภทข้อมูล Python นำเสนอประเภทข้อมูลในตัวหลายประเภท ประเภทข้อมูลในตัวของ Python ระบุไว้ด้านล่าง
- ชนิดข้อมูลสเกลาร์
ตัวอย่าง: int, float, bool, complex, none
- ชนิดข้อมูลลำดับ
ตัวอย่าง: สตริง รายการ และทูเพิล
- ชนิดข้อมูลการแมป
ตัวอย่าง: พจนานุกรม
- กำหนดประเภทข้อมูล
ตัวอย่าง: Set และ Frozenset
- ชนิดข้อมูลที่ไม่เปลี่ยนรูปและไม่เปลี่ยนรูป
ตัวเลข ทูเพิล และสตริงไม่เปลี่ยนรูป ในขณะที่รายการของอ็อบเจกต์พจนานุกรมไม่เปลี่ยนรูป
พจนานุกรมใน Python:
ประเภทข้อมูลคอลเลกชันใน Python ที่ประกอบด้วยคู่ของคีย์และค่าที่คล้ายกับแผนที่ในภาษาการเขียนโปรแกรมอื่นๆ เช่น Java เรียกว่าประเภทข้อมูลพจนานุกรม คุณสมบัติที่สำคัญบางประการของชนิดข้อมูลพจนานุกรมแสดงไว้ด้านล่าง
- ข้อมูลในพจนานุกรมสามารถเปลี่ยนแปลงได้แม้หลังจากการประกาศพจนานุกรมใน Python แล้ว ดังนั้น Python Dictionary จึงไม่แน่นอน
- ปุ่มในพจนานุกรมนั้นแตกต่างกัน อย่างไรก็ตาม ค่าต่างๆ อนุญาตให้มีรายการที่ซ้ำกันได้ นอกจากนี้ พจนานุกรม Python ยังไม่มีการเรียงลำดับ
- คีย์ถูกใช้เป็นดัชนีเพื่อเข้าถึงค่าในพจนานุกรม
- พจนานุกรมใน Python ถูกประกาศภายในวงเล็บปีกกาคู่หนึ่ง
การดำเนินการหลายอย่างที่สามารถใช้ในพจนานุกรม Python มีดังนี้
- สำเนา
- แจ่มใส
- รับ
- จากคีย์
- รายการ
- ป๊อปปี้
- กุญแจ
- โผล่
- ตั้งค่าเริ่มต้น
- ค่า
- อัปเดต
ตรวจสอบหลักสูตรวิทยาศาสตร์ข้อมูลของ upGrad
เหตุใดจึงต้องเรียงลำดับพจนานุกรมใน Python
- ไม่เหมือนกับรายการที่มีความซับซ้อนของเวลาในการค้นหาเป็น O(n) ความซับซ้อนของเวลาในการค้นหาของพจนานุกรมคือ O(1) ดังนั้นพจนานุกรมสามารถใช้เป็นการกระทำที่เป็นไปได้ทุกที่ที่จำเป็น
- พจนานุกรมที่เรียงลำดับมีความชัดเจนและความเข้าใจที่ดีขึ้นในการดำเนินการ
- การวิเคราะห์ที่มีประสิทธิภาพของโครงสร้างข้อมูลใด ๆ เปิดใช้งานได้โดยการจัดเรียงพจนานุกรมใน Python
สำรวจหลักสูตรวิทยาศาสตร์ข้อมูลยอดนิยมของเรา
หลักสูตรบริหารธุรกิจบัณฑิตสาขาวิทยาศาสตร์ข้อมูลจาก IIITB | หลักสูตรประกาศนียบัตรวิชาชีพด้านวิทยาศาสตร์ข้อมูลเพื่อการตัดสินใจทางธุรกิจ | วิทยาศาสตรมหาบัณฑิต สาขา Data Science จาก University of Arizona |
หลักสูตรประกาศนียบัตรขั้นสูงด้านวิทยาศาสตร์ข้อมูลจาก IIITB | หลักสูตรประกาศนียบัตรวิชาชีพด้าน Data Science and Business Analytics จาก University of Maryland | หลักสูตรวิทยาศาสตร์ข้อมูล |
วิธีการจัดเรียงพจนานุกรมแบบต่างๆ:
การเรียงลำดับพจนานุกรมใน Python สามารถทำได้หลายวิธี ดังที่แสดงด้านล่าง
- การเรียงลำดับตามคีย์
- พจนานุกรมเรียงตามค่า
- อัลกอริทึมการเรียงลำดับแบบกำหนดเองโดยใช้สตริงและตัวเลข
- กลับลำดับที่จัดเรียง
การเรียงลำดับพจนานุกรมตามค่าใน Python สามารถทำได้หลายวิธี
- สำหรับวิธีการวนซ้ำ
- ใช้ฟังก์ชัน sort ()
- ใช้โมดูลที่ดำเนินการและ itemgetter()
- จัดเรียงโดยใช้ฟังก์ชันแลมบ์ดา
- ส่งคืนพจนานุกรมใหม่พร้อมค่าที่เรียงลำดับ
ให้เราหารือเกี่ยวกับวิธีการเหล่านี้โดยละเอียดในหัวข้อถัดไป
อ่านบทความวิทยาศาสตร์ข้อมูลยอดนิยมของเรา
เส้นทางอาชีพด้านวิทยาศาสตร์ข้อมูล: คู่มืออาชีพที่ครอบคลุม | Data Science Career Growth: อนาคตของงานมาถึงแล้ว | เหตุใดวิทยาศาสตร์ข้อมูลจึงมีความสำคัญ 8 วิธีที่วิทยาการข้อมูลนำคุณค่ามาสู่ธุรกิจ |
ความเกี่ยวข้องของวิทยาศาสตร์ข้อมูลสำหรับผู้จัดการ | สุดยอดสูตรโกงวิทยาศาสตร์ข้อมูลที่นักวิทยาศาสตร์ข้อมูลทุกคนควรมี | เหตุผล 6 อันดับแรกที่คุณควรมาเป็นนักวิทยาศาสตร์ข้อมูล |
หนึ่งวันในชีวิตของ Data Scientist: พวกเขาทำอะไร? | Myth Busted: Data Science ไม่ต้องการการเข้ารหัส | Business Intelligence vs Data Science: อะไรคือความแตกต่าง? |
การเรียงลำดับพจนานุกรมโดยใช้ a for Loop:
สามารถใช้ A for Loop เพื่อจัดเรียงพจนานุกรมตามค่าใน Python ค่าของพจนานุกรมจะเรียงลำดับด้วยฟังก์ชัน sort() จากนั้นคอมไพลเลอร์จะวนซ้ำค่าที่เรียงลำดับเพื่อกำหนดคีย์สำหรับแต่ละค่า คู่ของคีย์-ค่าจะถูกจัดเรียงตามลำดับเดียวกันเพื่อสร้างพจนานุกรมใหม่ ไม่สามารถจัดลำดับพจนานุกรมใหม่ได้หลังจากจัดเรียงแล้ว เนื่องจากคู่ลำดับถูกเขียนขึ้นในพจนานุกรมใหม่ทั้งหมด
พจนานุกรมการเรียงลำดับด้วย sorted() ฟังก์ชั่น:
ฟังก์ชัน sorted() ใช้ในการเรียงลำดับค่าอาร์เรย์ ขณะจัดเรียงพจนานุกรม ฟังก์ชัน sorted() จะยอมรับพารามิเตอร์อย่างน้อยหนึ่งพารามิเตอร์ในไวยากรณ์ต่อไปนี้
เรียงลำดับ (dict1, คีย์ = dict1.get)
ในคำสั่งโค้ดข้างต้น 'คีย์' คือฟังก์ชันที่เรียกใช้ในแต่ละองค์ประกอบก่อนที่จะเปรียบเทียบค่าสำหรับการเรียงลำดับ ค่าของคีย์ในพจนานุกรมจะถูกส่งกลับโดยเมธอด get() บนวัตถุของพจนานุกรม นิพจน์ “sorted(dict1, key=dict1.get)” จะเปลี่ยนรายการของคีย์ซึ่งค่าต่างๆ ถูกจัดเรียงตามลำดับที่ระบุ สามารถสร้างพจนานุกรมใหม่ที่เรียงลำดับได้ด้วยสิ่งนี้
ฟังก์ชัน sorted() ช่วยลดขนาดโค้ด เมื่อรวมกับฟังก์ชัน itemgetter() ฟังก์ชัน sorted() จะมอบวิธีแก้ปัญหาที่รัดกุมยิ่งขึ้นในการจัดเรียงพจนานุกรมตามค่าใน Python
ใช้ตัวดำเนินการโมดูลและ itemgetter() เพื่อจัดเรียงพจนานุกรม:
ฟังก์ชัน itemgetter() รวมอยู่ในโมดูล 'ตัวดำเนินการ' ฟังก์ชันนี้จะแปลงกลับวัตถุที่เรียกได้ซึ่งสามารถส่งคืนองค์ประกอบจากวัตถุได้ ออบเจกต์ที่เรียกได้ซึ่งแปลงกลับค่าพจนานุกรมใดๆ ที่มี '2' เนื่องจากคีย์นั้นถูกสร้างขึ้นด้วยฟังก์ชัน itemgetter() ในตัวอย่างด้านล่าง
เมธอด items() สามารถเข้าถึงได้จากทุกพจนานุกรม คู่คีย์-ค่าจะถูกส่งกลับเป็นรายการของทูเพิลด้วยวิธีนี้ สามารถใช้เมธอด itemgetter() เพื่อเรียงลำดับรายการทูเพิลโดยการดึงค่าที่สองของทูเพิล เมื่อเรียงลำดับรายการสิ่งอันดับแล้ว จะสามารถสร้างพจนานุกรมใหม่ด้วยค่าเหล่านั้นได้
การใช้ฟังก์ชัน Lambda เพื่อจัดเรียงพจนานุกรมใน Python:
ฟังก์ชันนิรนามหรือไม่ระบุชื่อใน Python เรียกว่าฟังก์ชันแลมบ์ดา การใช้ฟังก์ชันแลมบ์ดาช่วยลดความจำเป็นในการนำเข้า
วิธีการที่กล่าวถึงจนถึงตอนนี้ใช้ได้กับ Python 3.7 และเวอร์ชันอื่นๆ ที่สูงกว่าเท่านั้น อย่างไรก็ตาม วิธีการถัดไปที่จะกล่าวถึงก็เข้ากันได้กับเวอร์ชันก่อนหน้านี้เช่นกัน
พจนานุกรมใหม่จะถูกส่งกลับด้วยค่าที่เรียงลำดับ:
โมดูลคอลเลกชันประกอบด้วยฟังก์ชัน OrderedDict() ที่สามารถใช้เพื่อเก็บพจนานุกรมที่เรียงลำดับ สามารถใช้ได้เมื่อพจนานุกรมจัดเรียงตามค่าต่างๆ
หากคุณสงสัยที่จะเรียนรู้เกี่ยวกับ tableau, data science ลองดู โปรแกรม Executive PG Program in Data Science ของ IIIT-B & upGrad ซึ่งสร้างขึ้นสำหรับมืออาชีพในการทำงานและมีกรณีศึกษาและโครงการกว่า 10+ โครงการ เวิร์กช็อปภาคปฏิบัติจริง การให้คำปรึกษากับผู้เชี่ยวชาญในอุตสาหกรรม , 1 ต่อ 1 กับที่ปรึกษาในอุตสาหกรรม 400+ ชั่วโมงของการเรียนรู้และความช่วยเหลือด้านงานกับบริษัทชั้นนำ