Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

ลบข้อมูลซ้อน (Nested Records) ออกจาก Tuple ใน Python


เมื่อต้องการลบ Record/Tuple ที่ซ้อนอยู่ภายใน Tuple of Tuple สามารถใช้ Loop เรียบง่าย พร้อมเมธอด isinstance และ enumerate ได้

เมธอด enumerate เพิ่มตัวนับ (counter) ให้กับ Iterable ที่กำหนด และคืนค่ากลับ เมธอด isinstance ตรวจสอบว่าพารามิเตอร์ที่กำหนดเป็นชนิดข้อมูลเฉพาะหรือไม่

ด้านล่างเป็นสาธิตของสิ่งนี้ −

ตัวอย่าง

tuple_1 = (11, 23, (41, 25, 22), 19)
print("The tuple is : ")
print(tuple_1)
my_result = tuple()
for count, elem in enumerate(tuple_1):
    if not isinstance(elem, tuple):
        my_result = my_result + (elem, )
print("Elements after removing the nested tuple is : ")
print(my_result)

ผลลัพธ์

The tuple is : (11, 23, (41, 25, 22), 19)
Elements after removing the nested tuple is : (11, 23, 19)

คำอธิบาย

  • Tuple ถูกกำหนด และแสดงบน Console
  • Tuple ว่างอีกตัวหนึ่งถูกกำหนด
  • Tuple แรกถูก Enumerate และ Iterate ทีละอัน
  • หากองค์ประกอบภายใน Tuple ไม่ใช่ Instance ของชนิดเฉพาะ องค์ประกอบนั้นจะถูกเพิ่มเข้าไปใน List ว่าง
  • การดำเนินการนี้ถูกกำหนดให้กับตัวแปร
  • แสดงผลลัพธ์บน Console