ทำความเข้าใจว่าอะไรคือ Mutable และ Immutable ใน Python

เผยแพร่แล้ว: 2023-01-05

พวกเราส่วนใหญ่เคยได้ยินคำว่า "ไม่เปลี่ยนรูป" และ "ไม่เปลี่ยนรูป" เมื่อพูดถึงตัวแปร คุณอาจทราบด้วยซ้ำว่าการกำหนดตัวแปรด้วยประเภทที่ไม่เปลี่ยนแปลงหรือไม่เปลี่ยนรูป คุณสามารถเปลี่ยนค่าเมื่อเวลาผ่านไป แทนที่จะสร้างสำเนาใหม่ทุกครั้งที่คุณต้องการอัปเดต อย่างไรก็ตาม คุณรู้หรือไม่ว่าสิ่งนี้มีประโยชน์อย่างไรและทำไม เป็นคำศัพท์ที่ค่อนข้างละเอียดอ่อนซึ่งมักถูกเข้าใจผิด ดังนั้นหากคุณยังไม่แน่ใจเกี่ยวกับความหมาย โปรดอ่านต่อเพื่อดูรายละเอียดเพิ่มเติม

รับใบรับรองวิทยาศาสตร์ข้อมูลจากมหาวิทยาลัยชั้นนำของโลก เรียนรู้โปรแกรม PG สำหรับผู้บริหาร โปรแกรมประกาศนียบัตรขั้นสูง หรือโปรแกรมปริญญาโทเพื่อติดตามความก้าวหน้าในอาชีพของคุณอย่างรวดเร็ว

สารบัญ

วัตถุที่ไม่แน่นอน

วัตถุไม่แน่นอนหากเปิดให้เปลี่ยนแปลงได้หลังจากสร้างแล้ว ในทางปฏิบัติ หมายความว่าคุณสามารถเปลี่ยนค่าของวัตถุที่มีอยู่เมื่อใดก็ได้ ประเภทส่วนใหญ่ใน Python ไม่สามารถเปลี่ยนแปลงได้ รวมถึงประเภทข้อมูลมาตรฐานส่วนใหญ่ เช่น จำนวนเต็ม สตริง และรายการ คุณยังสามารถสร้างประเภทแบบกำหนดเองที่ไม่แน่นอนได้ อันที่จริงแล้ว ประเภทส่วนใหญ่ได้รับการออกแบบมาให้ไม่แน่นอนโดยค่าเริ่มต้น อย่างไรก็ตาม มีข้อยกเว้นบางประการ Boolean และ None ชนิดพิเศษได้รับการออกแบบมาให้ไม่เปลี่ยนรูป หมายความว่าคุณไม่สามารถแก้ไขได้

วัตถุที่ไม่เปลี่ยนรูป

ออบเจ็กต์ที่ไม่เปลี่ยนรูปจะไม่เปิดให้เปลี่ยนแปลงหลังจากสร้างแล้ว หมายความว่าคุณไม่สามารถกำหนดค่าใหม่ ลบออก หรือแทนที่ได้ วัตถุที่ไม่เปลี่ยนรูปเป็นประเภทเฉพาะที่มีกฎเฉพาะที่กำหนดว่าอะไรทำได้และทำไม่ได้กับพวกมัน มีวัตถุที่ไม่เปลี่ยนรูปในตัวเพียงไม่กี่ประเภทใน Python ซึ่งรวมถึงจำนวนเต็มซึ่งใช้แทนตัวเลขที่ไม่มีจุดทศนิยม เช่น เลข 3 สตริงก็เปลี่ยนรูปไม่ได้เช่นกัน แต่ก็เป็นประเภทข้อมูลที่แตกต่างกันด้วย ซึ่งเราจะพูดถึงกัน อ็อบเจกต์ที่ไม่เปลี่ยนรูปจะมีประโยชน์เมื่อคุณต้องการสร้างค่าเฉพาะที่ไม่เปิดให้มีการเปลี่ยนแปลงใดๆ ตัวอย่างของการใช้งานอ็อบเจกต์ที่ไม่เปลี่ยนรูปแบบ ได้แก่ แฮชรหัสผ่าน คีย์เข้ารหัสความปลอดภัย แฮชสำหรับการตรวจสอบความสมบูรณ์ และ ID สำหรับการระบุผู้ใช้หรือรายการ

ตรวจสอบโปรแกรม US - Data Science ของเรา

หลักสูตรประกาศนียบัตรวิชาชีพด้านวิทยาศาสตร์ข้อมูลและการวิเคราะห์ธุรกิจ วิทยาศาสตรมหาบัณฑิตสาขาวิทยาศาสตร์ข้อมูล วิทยาศาสตรมหาบัณฑิตสาขาวิทยาศาสตร์ข้อมูล หลักสูตรประกาศนียบัตรขั้นสูงด้านวิทยาศาสตร์ข้อมูล
โปรแกรม Executive PG ในสาขาวิทยาศาสตร์ข้อมูล Python การเขียนโปรแกรม Bootcamp หลักสูตรประกาศนียบัตรวิชาชีพด้านวิทยาศาสตร์ข้อมูลเพื่อการตัดสินใจทางธุรกิจ โปรแกรมขั้นสูงในวิทยาศาสตร์ข้อมูล

การทำความเข้าใจว่าเหตุใดการไม่เปลี่ยนรูปจึงมีความสำคัญ

ออบเจกต์ที่ไม่เปลี่ยนรูปได้รับการออกแบบเพื่อให้มั่นใจว่าค่ายังคงเหมือนเดิม แม้ว่ารหัสจะถูกเขียนและเรียกใช้บนคอมพิวเตอร์เครื่องอื่นก็ตาม นี่เป็นสิ่งสำคัญเพื่อให้แน่ใจว่าโค้ดทำงานได้อย่างถูกต้อง ไม่มีข้อผิดพลาด และผลลัพธ์นั้นถูกต้อง ตัวอย่างที่ดีคือการใช้ ID สำหรับผู้ใช้บนเว็บไซต์ หาก ID นั้นถูกสร้างขึ้นเป็นจำนวนเต็มที่ไม่เปลี่ยนรูป รับประกันว่าจะคงเดิมตลอดอายุการใช้งานของเว็บไซต์ ซึ่งหมายความว่าเมื่อคุณมีผู้ใช้ที่มีรหัส 123456 คุณจะรู้ว่ารหัสนั้นจะไม่เปลี่ยนแปลง สิ่งนี้มีความสำคัญอย่างยิ่งในธนาคารออนไลน์และอีคอมเมิร์ซ ซึ่ง ID สามารถใช้เป็นตัวระบุเฉพาะสำหรับผู้ใช้แต่ละราย ทำให้พวกเขาสามารถเข้าสู่ระบบและใช้บริการได้ ถ้า ID เป็นออบเจกต์ที่ไม่แน่นอน เช่น สตริง ค่าอาจเปลี่ยนแปลงได้ หมายความว่าจะระบุผู้ใช้ไม่ถูกต้องอีกต่อไป นอกจากนี้ยังหมายความว่าข้อมูลใด ๆ ที่พวกเขาป้อนหรือส่งจะไม่ถูกต้อง ซึ่งไม่ใช่สถานการณ์ที่คุณต้องการ

อ่านบทความยอดนิยมในสหรัฐอเมริกา - วิทยาศาสตร์ข้อมูล

หลักสูตรการวิเคราะห์ข้อมูลพร้อมใบรับรอง หลักสูตรออนไลน์ JavaScript ฟรีพร้อมใบรับรอง คำถามและคำตอบสัมภาษณ์ Python ที่ถูกถามมากที่สุด
คำถามและคำตอบสัมภาษณ์นักวิเคราะห์ข้อมูล ตัวเลือกอาชีพด้านวิทยาศาสตร์ข้อมูลอันดับต้น ๆ ในสหรัฐอเมริกา [2022] SQL Vs MySQL - อะไรคือความแตกต่าง
คู่มือขั้นสูงสำหรับประเภทของข้อมูล Python Developer เงินเดือนในสหรัฐอเมริกา เงินเดือนนักวิเคราะห์ข้อมูลในสหรัฐอเมริกา: เงินเดือนเฉลี่ย

ตัวอย่างและไวยากรณ์ของประเภท Python ที่ไม่เปลี่ยนรูปและไม่เปลี่ยนรูป

ต่อไปนี้คือตัวอย่างที่สำคัญของทั้งประเภทวัตถุที่ไม่เปลี่ยนรูปและไม่เปลี่ยนรูปใน Python:

– Mutable Objects: Lists, Dictionaries และ Strings คือตัวอย่างทั้งหมดของประเภทที่ไม่แน่นอน

– วัตถุที่ไม่เปลี่ยนรูป: จำนวนเต็ม ทศนิยม และสัญลักษณ์ คือตัวอย่างทั้งหมดของประเภทที่ไม่เปลี่ยนรูป

แม้ว่าในแต่ละหมวดหมู่จะมีประเภทต่างๆ มากมาย ตัวอย่างเหล่านี้ควรช่วยให้คุณเข้าใจความแตกต่างระหว่างประเภทที่ไม่เปลี่ยนรูปและไม่เปลี่ยนรูป และลักษณะการทำงานที่แตกต่างกันใน Python วิธีที่ดีที่สุดในการทำความเข้าใจความแตกต่างเหล่านี้อย่างถ่องแท้คือการทดลองกับสิ่งเหล่านี้ ลองสร้างตัวแปรประเภทต่างๆ แล้วเปลี่ยนไปเรื่อยๆ เพื่อดูว่าทำงานอย่างไร คุณยังสามารถดูเอกสารฉบับสมบูรณ์เกี่ยวกับประเภทข้อมูลของ Python เพื่อเรียนรู้เพิ่มเติม

บทสรุป

อย่างที่คุณเห็น ชนิดข้อมูลที่ไม่เปลี่ยนรูปและไม่เปลี่ยนรูปเป็นปัจจัยสำคัญในการพัฒนาโค้ด สิ่งเหล่านี้อาจส่งผลต่อวิธีการทำงานของโค้ดและความแม่นยำของผลลัพธ์ ดังนั้นจึงจำเป็นต้องเข้าใจความแตกต่างระหว่างโค้ดเหล่านี้และสังเกตเมื่อมีการใช้งาน เมื่อคุณทราบวิธีและเวลาที่จะใช้ประเภทเหล่านี้ คุณจะสามารถสร้างโค้ดที่มีประสิทธิภาพและแม่นยำมากขึ้นได้ นอกจากนี้คุณยังสามารถหลีกเลี่ยงข้อผิดพลาดทั่วไปที่พบได้เมื่อคุณใช้ประเภทเหล่านี้ในทางที่ผิด เช่น รหัสอาคารที่เสี่ยงต่อการถูกแฮ็กและการละเมิดข้อมูล ในท้ายที่สุด วิธีที่ดีที่สุดในการใช้ประเภทข้อมูลที่ไม่เปลี่ยนรูปและไม่เปลี่ยนรูปแบบให้เชี่ยวชาญคือการฝึกเขียนโค้ด เมื่อคุณพบสถานการณ์ที่ต้องใช้ คุณจะเริ่มเข้าใจวิธีการทำงานและวิธีการใช้งานได้ดีขึ้น

สิ่งสำคัญยิ่งกว่าสำหรับคุณคือการได้รับความรู้ในการทำงานของแนวคิดดังกล่าวใน Python เนื่องจาก Python เป็นรากฐานของความพยายามด้านวิทยาศาสตร์ข้อมูล ดังนั้น หากคุณต้องการเริ่มต้นเส้นทางวิทยาศาสตร์ข้อมูล การเรียนรู้พื้นฐานของ Python ให้เชี่ยวชาญควรเป็นก้าวแรกของคุณ สิ่งที่คุณต้องมีคือคำแนะนำที่เหมาะสมและเครือข่ายของผู้ที่เคยทำงานในอุตสาหกรรมนี้ ที่ upGrad ใบรับรองวิชาชีพด้านวิทยาศาสตร์ข้อมูลและการวิเคราะห์ธุรกิจของเรามีจุดมุ่งหมายเพื่อให้เทคนิคดังกล่าว หลักสูตร 20 เดือนนี้ออกแบบมาสำหรับทั้งนักศึกษาใหม่และมืออาชีพที่มีประสบการณ์ เพิ่มโอกาสในการเลือกจาก 3 ความเชี่ยวชาญพิเศษ ทำงานร่วมกับผู้เชี่ยวชาญในอุตสาหกรรม และเรียนรู้เครื่องมือและเทคโนโลยีที่เกี่ยวข้องทั้งหมดที่จำเป็นสำหรับอาชีพที่สดใสในด้านวิทยาศาสตร์ข้อมูล

ตรวจสอบหน้าหลักสูตรและลงทะเบียนวันนี้เพื่อรับอาชีพที่สดใสในด้านวิทยาศาสตร์ข้อมูล!

สิ่งสำคัญคือต้องรู้ประเภทที่ไม่เปลี่ยนรูปและไม่เปลี่ยนรูปใน Python หรือไม่

อย่างแน่นอน. คุณต้องรู้ว่าประเภทใดใน Python ที่เปลี่ยนแปลงได้และประเภทใดที่ไม่เปลี่ยนแปลง เพื่อที่ว่าเมื่อคุณเขียนโปรแกรมสำหรับโปรเจ็กต์ใดๆ ของคุณ คุณจะทราบได้อย่างชัดเจนว่าคุณต้องการตัวแปรประเภทใด

มีการใช้ประเภทข้อมูลที่ไม่แน่นอนใน Python อย่างไร

ใช้ประเภทข้อมูลที่ไม่แน่นอนเหมือนกับประเภทข้อมูลอื่นๆ ใน Python ข้อแตกต่างเพียงอย่างเดียวคือสามารถปรับเปลี่ยนประเภทข้อมูลที่ไม่แน่นอนได้ในแง่ของค่าที่มีอยู่

ชนิดข้อมูลที่ไม่เปลี่ยนแปลงดีกว่าชนิดข้อมูลที่ไม่เปลี่ยนรูปแบบหรือไม่

ไม่มีอะไรดีขึ้นหรือแย่ลงเมื่อพูดถึงประเภทข้อมูลใน Python สุดท้ายก็ขึ้นอยู่กับว่าคุณต้องการทำอะไรกับตัวแปร หากคุณมองเห็นว่าตัวแปรของคุณต้องการการแก้ไขจำนวนมากตามเวลา คุณอาจต้องการใช้ประเภทข้อมูลที่ไม่แน่นอน ในทางกลับกัน หากคุณแน่ใจว่าตัวแปรของคุณจะมีค่าคงที่ คุณสามารถใช้ประเภทข้อมูลที่ไม่เปลี่ยนรูปได้