Python 3 - ทูเปิล
ทูเปิลคือชุดของวัตถุที่เรียงลำดับและไม่เปลี่ยนรูป Tuples เป็นลำดับเช่นเดียวกับรายการ ความแตกต่างที่สำคัญระหว่างสิ่งที่เพิ่มขึ้นและรายการคือสิ่งที่ไม่สามารถเปลี่ยนแปลงได้ไม่เหมือนกับรายการ Tuples ใช้วงเล็บในขณะที่รายการใช้วงเล็บเหลี่ยม
การสร้างทูเปิลทำได้ง่ายเพียงแค่ใส่ค่าต่างๆที่คั่นด้วยจุลภาค คุณสามารถใส่ค่าที่คั่นด้วยเครื่องหมายจุลภาคระหว่างวงเล็บได้เช่นกัน ตัวอย่างเช่น -
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5 )
tup3 = "a", "b", "c", "d"
ทูเพิลว่างถูกเขียนเป็นสองวงเล็บที่ไม่มีอะไรเลย -
tup1 = ();
ในการเขียนทูเปิลที่มีค่าเดียวคุณต้องใส่ลูกน้ำแม้ว่าจะมีเพียงค่าเดียว -
tup1 = (50,)
เช่นเดียวกับดัชนีสตริงดัชนีทูเพิลเริ่มต้นที่ 0 และสามารถแบ่งส่วนเชื่อมต่อและอื่น ๆ ได้
การเข้าถึงค่าใน Tuples
ในการเข้าถึงค่าในทูเพิลให้ใช้วงเล็บเหลี่ยมสำหรับการแบ่งส่วนพร้อมกับดัชนีหรือดัชนีเพื่อรับค่าที่มีอยู่ในดัชนีนั้น ตัวอย่างเช่น -
#!/usr/bin/python3
tup1 = ('physics', 'chemistry', 1997, 2000)
tup2 = (1, 2, 3, 4, 5, 6, 7 )
print ("tup1[0]: ", tup1[0])
print ("tup2[1:5]: ", tup2[1:5])
เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
tup1[0]: physics
tup2[1:5]: (2, 3, 4, 5)
กำลังอัปเดต Tuples
สิ่งทอไม่เปลี่ยนรูปซึ่งหมายความว่าคุณไม่สามารถอัปเดตหรือเปลี่ยนแปลงค่าขององค์ประกอบทูเปิลได้ คุณสามารถใช้บางส่วนของสิ่งที่มีอยู่เพื่อสร้างสิ่งทับถมใหม่ดังตัวอย่างต่อไปนี้แสดงให้เห็น -
#!/usr/bin/python3
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
# Following action is not valid for tuples
# tup1[0] = 100;
# So let's create a new tuple as follows
tup3 = tup1 + tup2
print (tup3)
เมื่อดำเนินการโค้ดด้านบนจะให้ผลลัพธ์ดังนี้ -
(12, 34.56, 'abc', 'xyz')
ลบ Tuple Elements
ไม่สามารถลบองค์ประกอบทูเพิลแต่ละรายการได้ แน่นอนว่าไม่มีอะไรผิดปกติในการรวบรวมทูเปิลอื่นเข้าด้วยกันโดยทิ้งองค์ประกอบที่ไม่ต้องการ
หากต้องการลบทูเพิลทั้งหมดอย่างชัดเจนให้ใช้ไฟล์ delคำให้การ. ตัวอย่างเช่น -
#!/usr/bin/python3
tup = ('physics', 'chemistry', 1997, 2000);
print (tup)
del tup;
print ("After deleting tup : ")
print (tup)
สิ่งนี้ก่อให้เกิดผลลัพธ์ต่อไปนี้
Note- มีการเพิ่มข้อยกเว้น เพราะหลังจากนั้นdel tupไม่มีทูเปิลอีกต่อไป
('physics', 'chemistry', 1997, 2000)
After deleting tup :
Traceback (most recent call last):
File "test.py", line 9, in <module>
print tup;
NameError: name 'tup' is not defined
การดำเนินการ Tuples พื้นฐาน
ทูเปิลตอบสนองต่อตัวดำเนินการ + และ * เหมือนกับสตริง พวกเขาหมายถึงการต่อกันและการทำซ้ำที่นี่เช่นกันยกเว้นว่าผลลัพธ์จะเป็นทูเพิลใหม่ไม่ใช่สตริง
ในความเป็นจริง tuples ตอบสนองต่อการดำเนินการตามลำดับทั่วไปทั้งหมดที่เราใช้กับสตริงในบทก่อนหน้า
นิพจน์ Python | ผล | คำอธิบาย |
---|---|---|
เลน ((1, 2, 3)) | 3 | ความยาว |
(1, 2, 3) + (4, 5, 6) | (1, 2, 3, 4, 5, 6) | การเชื่อมต่อ |
('สวัสดี!',) * 4 | ('Hi!', 'Hi!', 'Hi!', 'Hi!') | การทำซ้ำ |
3 ใน (1, 2, 3) | จริง | การเป็นสมาชิก |
สำหรับ x ใน (1,2,3): พิมพ์ (x, end = '') | 1 2 3 | การทำซ้ำ |
การจัดทำดัชนีการแบ่งส่วนและเมทริกซ์
เนื่องจากทูเปิลเป็นลำดับการสร้างดัชนีและการแบ่งส่วนจึงทำงานในลักษณะเดียวกับทูเปิลเช่นเดียวกับที่ทำกับสตริงโดยสมมติว่าอินพุตต่อไปนี้ -
T=('C++', 'Java', 'Python')
นิพจน์ Python | ผล | คำอธิบาย |
---|---|---|
ท [2] | 'Python' | ออฟเซ็ตเริ่มต้นที่ศูนย์ |
T [-2] | 'Java' | เชิงลบ: นับจากทางขวา |
T [1:] | ('Java', 'Python') | การแบ่งส่วนดึงข้อมูลส่วนต่างๆ |
ไม่มีตัวคั่นที่แนบมา
ไม่มีการปิดตัวคั่นเป็นชุดของอ็อบเจ็กต์หลายตัวคั่นด้วยเครื่องหมายจุลภาคเขียนโดยไม่ระบุสัญลักษณ์เช่นวงเล็บสำหรับรายการวงเล็บสำหรับสิ่งที่เพิ่มขึ้น ฯลฯ ค่าเริ่มต้นเป็นสิ่งที่เพิ่มขึ้นตามที่ระบุไว้ในตัวอย่างสั้น ๆ เหล่านี้
ฟังก์ชัน Tuple ในตัว
Python มีฟังก์ชัน tuple ดังต่อไปนี้ -
ซีเนียร์ | ฟังก์ชั่นและคำอธิบาย |
---|---|
1 | cmp (tuple1, tuple2) เปรียบเทียบองค์ประกอบของสิ่งทอทั้งสอง |
2 | len (ทูเพิล) ให้ความยาวทั้งหมดของทูเปิล |
3 | สูงสุด (ทูเพิล) ส่งคืนสินค้าจากทูเปิลที่มีค่าสูงสุด |
4 | นาที (ทูเพิล) ส่งคืนสินค้าจากทูเปิลที่มีค่าต่ำสุด |
5 | ทูเพิล (seq) แปลงรายการเป็นทูเพิล |