Python TUPLE – แพ็ค, แกะ, เปรียบเทียบ, การแบ่งส่วน, ลบ, คีย์
Tuple Matching คืออะไร Python?
Tuple จับคู่เข้า Python เป็นวิธีการจัดกลุ่มสิ่งอันดับโดยการจับคู่องค์ประกอบที่สองในสิ่งอันดับ สามารถทำได้โดยใช้พจนานุกรมโดยตรวจสอบองค์ประกอบที่สองในแต่ละทูเพิลในการเขียนโปรแกรมหลาม อย่างไรก็ตาม เราสามารถสร้างสิ่งอันดับใหม่ได้โดยการนำส่วนของสิ่งอันดับที่มีอยู่ออกไป
ไวยากรณ์ทูเพิล
Tup = ('Jan','feb','march')
ในการเขียนทูเพิลว่าง คุณต้องเขียนเป็นสองวงเล็บโดยไม่มีอะไร-
tup1 = ();
ในการเขียนทูเพิลสำหรับค่าเดียว คุณจะต้องใส่เครื่องหมายจุลภาค แม้ว่าจะมีค่าเดียวก็ตาม ในตอนท้ายคุณต้องเขียนอัฒภาคตามที่แสดงด้านล่าง
Tup1 = (50,);
ดัชนีทูเพิลเริ่มต้นที่ 0 และสามารถต่อกัน แบ่งส่วน และอื่นๆ ได้
การมอบหมาย Tuple
Python มีคุณสมบัติการกำหนดสิ่งอันดับซึ่งช่วยให้คุณสามารถกำหนดตัวแปรได้มากกว่าหนึ่งตัวแปรในแต่ละครั้ง ในที่นี้ เราได้กำหนด tuple 1 ให้กับข้อมูลบุคคล เช่น ชื่อ นามสกุล ปีเกิด ฯลฯ และอีก 2 tuple ที่มีค่าต่างๆ อยู่ในนั้น เช่น ตัวเลข (1,2,3,….,7)
ตัวอย่างเช่น,
(ชื่อ, นามสกุล, ปีเกิด, หนังที่ชอบและปี, อาชีพ, บ้านเกิด) = โรเบิร์ต
นี่คือรหัส
tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida'); tup2 = (1,2,3,4,5,6,7); print(tup1[0]) print(tup2[1:4])
- Tuple 1 รวมรายการข้อมูลของ Robert
- ทูเพิล 2 มีรายการตัวเลขอยู่ในนั้น
- เราเรียกค่าสำหรับ [0] เป็นทูเพิล และสำหรับทูเพิล 2 เราเรียกค่าระหว่าง 1 ถึง 4
- เรียกใช้รหัส - ให้ชื่อ Robert สำหรับทูเพิลแรกในขณะที่ทูเพิลที่สองจะให้หมายเลข (2,3 และ 4)
การบรรจุและการเปิดออก
ในการบรรจุ เราจะใส่ค่าลงในทูเพิลใหม่ในขณะที่ทำการคลายแพ็ก เราจะแยกค่าเหล่านั้นกลับไปเป็นตัวแปร
x = ("Guru99", 20, "Education") # tuple packing (company, emp, profile) = x # tuple unpacking print(company) print(emp) print(profile)
การเปรียบเทียบสิ่งอันดับ
ตัวดำเนินการเปรียบเทียบใน Python สามารถทำงานกับสิ่งอันดับได้
การเปรียบเทียบเริ่มต้นด้วยองค์ประกอบแรกของแต่ละทูเพิล หากไม่เปรียบเทียบกับ =,< หรือ > ก็จะไปยังองค์ประกอบที่สองไปเรื่อยๆ
เริ่มต้นด้วยการเปรียบเทียบองค์ประกอบแรกจากแต่ละสิ่งอันดับ
ลองศึกษาสิ่งนี้ด้วยตัวอย่าง -
#กรณีที่1
a=(5,6) b=(1,4) if (a>b):print("a is bigger") else: print("b is bigger")
#กรณีที่2
a=(5,6) b=(5,4) if (a>b):print("a is bigger") else: print ("b is bigger")
#กรณีที่3
a=(5,6) b=(6,4) if (a>b):print("a is bigger") else: print("b is bigger")
กรณีที่ 1: การเปรียบเทียบเริ่มต้นด้วยองค์ประกอบแรกของแต่ละทูเพิล ในกรณีนี้ 5>1 ดังนั้นเอาต์พุต a จึงใหญ่กว่า
กรณีฮิต: การเปรียบเทียบเริ่มต้นด้วยองค์ประกอบแรกของแต่ละทูเพิล ในกรณีนี้ 5>5 ซึ่งไม่สามารถสรุปได้ ดังนั้นมันจึงดำเนินต่อไปยังองค์ประกอบถัดไป 6>4 ดังนั้นเอาต์พุต a จึงใหญ่กว่า
กรณีฮิต: การเปรียบเทียบเริ่มต้นด้วยองค์ประกอบแรกของแต่ละทูเพิล ในกรณีนี้ 5>6 ซึ่งเป็นเท็จ ดังนั้นมันจึงเข้าไปในบล็อก else แล้วพิมพ์ว่า "b ใหญ่กว่า"
การใช้สิ่งอันดับเป็นกุญแจในพจนานุกรม
เนื่องจากทูเปิลสามารถแฮชได้ แต่รายการไม่ใช่แบบแฮช เราจึงต้องใช้ทูเพิลเป็นคีย์หากเราต้องการสร้างคีย์ผสมเพื่อใช้ในพจนานุกรม
ตัวอย่าง:เราจะเจอคีย์ผสมหากเราจำเป็นต้องสร้างสมุดโทรศัพท์ที่แมปชื่อ ชื่อสกุล คู่หมายเลขโทรศัพท์ ฯลฯ โดยถือว่าเราประกาศตัวแปรเป็นหมายเลขนามสกุลและหมายเลขแรก เราสามารถเขียนคำสั่งกำหนดค่าพจนานุกรมดังแสดงด้านล่าง:
directory[last,first] = number
ภายในวงเล็บ นิพจน์จะเป็นทูเพิล เราสามารถใช้การกำหนดทูเพิลในลูป for เพื่อนำทางพจนานุกรมนี้
for last, first in directory:
print first, last, directory[last, first]
การวนซ้ำนี้จะนำทางคีย์ในไดเร็กทอรีซึ่งเป็นสิ่งอันดับ โดยจะกำหนดองค์ประกอบของแต่ละทูเพิลให้เป็นลำดับสุดท้ายและลำดับแรก จากนั้นจึงพิมพ์ชื่อและหมายเลขโทรศัพท์ที่เกี่ยวข้อง
สิ่งอันดับและพจนานุกรม
พจนานุกรมสามารถส่งคืนรายการสิ่งอันดับโดยการเรียกรายการ โดยที่แต่ละสิ่งอันดับเป็นคู่ของค่าคีย์
a = {'x':100, 'y':200} b = list(a.items()) print(b)
กำลังลบสิ่งอันดับ
สิ่งอันดับไม่เปลี่ยนรูปและไม่สามารถลบได้ คุณไม่สามารถลบหรือลบรายการออกจากทูเพิลได้ แต่การลบทูเพิลทั้งหมดสามารถทำได้โดยใช้คีย์เวิร์ด
del
การหั่นของ Tuple
ในการดึงชุดขององค์ประกอบย่อยเฉพาะจากทูเพิลหรือรายการ เราจะใช้ฟังก์ชันพิเศษนี้ที่เรียกว่าการแบ่งส่วน การแบ่งส่วนไม่เพียงแต่ใช้ได้กับทูเพิลเท่านั้น แต่ยังรวมถึงอาร์เรย์และรายการด้วย
x = ("a", "b","c", "d", "e") print(x[2:4])
ผลลัพธ์ของโค้ดนี้จะเป็น ('c', 'd')
ที่นี่คือ Python 2 รหัสสำหรับตัวอย่างข้างต้นทั้งหมด
tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida'); tup2 = (1,2,3,4,5,6,7); print tup1[0] print tup2[1:4] #Packing and Unpacking x = ("Guru99", 20, "Education") # tuple packing (company, emp, profile) = x # tuple unpacking print company print emp print profile #Comparing tuples #case 1 a=(5,6) b=(1,4) if (a>b):print "a is bigger" else: print "b is bigger" #case 2 a=(5,6) b=(5,4) if (a>b):print "a is bigger" else: print "b is bigger" #case 3 a=(5,6) b=(6,4) if (a>b):print "a is bigger" else: print "b is bigger" #Tuples and dictionary a = {'x':100, 'y':200} b = a.items() print b #Slicing of Tuple x = ("a", "b","c", "d", "e") print x[2:4]
ฟังก์ชั่นในตัวพร้อม Tuple
ในการทำงานที่แตกต่างกัน tuple อนุญาตให้คุณใช้ฟังก์ชันในตัวมากมาย เช่น all(), any(), enumerate(), max(), min(), sorted(), len(), tuple() ฯลฯ
ข้อดีของสิ่งอันดับเหนือรายการ
- การวนซ้ำผ่านทูเปิลนั้นเร็วกว่าการใช้รายการ เนื่องจากสิ่งอันดับไม่เปลี่ยนรูป
- สิ่งอันดับที่มีองค์ประกอบที่ไม่เปลี่ยนรูปสามารถใช้เป็นคีย์สำหรับพจนานุกรมได้ ซึ่งไม่สามารถทำได้กับรายการ
- หากคุณมีข้อมูลที่ไม่เปลี่ยนรูป การใช้ทูเพิลจะรับประกันได้ว่าข้อมูลนั้นจะยังคงได้รับการป้องกันการเขียน
สรุป
Python มีคุณสมบัติการกำหนดสิ่งอันดับซึ่งช่วยให้คุณสามารถกำหนดตัวแปรได้มากกว่าหนึ่งตัวแปรในแต่ละครั้ง
- การบรรจุและการแกะสิ่งอันดับ
- ในการบรรจุ เราจะใส่ค่าลงในทูเพิลใหม่ในขณะที่ทำการคลายแพ็ก เราจะแยกค่าเหล่านั้นกลับไปเป็นตัวแปร
- A ตัวดำเนินการเปรียบเทียบใน Python สามารถทำงานกับสิ่งอันดับได้
- การใช้สิ่งอันดับเป็นกุญแจในพจนานุกรม
- สิ่งอันดับสามารถแฮชได้ แต่รายการไม่ใช่
- เราต้องใช้ทูเพิลเป็นคีย์หากเราต้องการสร้างคีย์ผสมเพื่อใช้ในพจนานุกรม
- พจนานุกรมสามารถส่งคืนรายการสิ่งอันดับโดยการเรียกรายการ โดยที่แต่ละสิ่งอันดับเป็นคู่ของค่าคีย์
- สิ่งอันดับไม่เปลี่ยนรูปและไม่สามารถลบได้ คุณไม่สามารถลบหรือลบรายการออกจากทูเพิลได้ แต่การลบทูเพิลทั้งหมดสามารถทำได้โดยใช้คีย์เวิร์ด “del”
- ในการดึงชุดขององค์ประกอบย่อยเฉพาะจากทูเพิลหรือรายการ เราจะใช้ฟังก์ชันพิเศษนี้ที่เรียกว่าการแบ่งส่วน