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

การเพิ่มในทูเพิลที่ซ้อนกันใน Python


เมื่อจำเป็นต้องดำเนินการเพิ่มในทูเพิลที่ซ้อนกัน สามารถใช้เมธอด 'zip' และนิพจน์ตัวสร้างได้

ตัวสร้างคือวิธีง่ายๆ ในการสร้างตัววนซ้ำ มันใช้คลาสโดยอัตโนมัติด้วยเมธอด '__iter__()' และ '__next__()' และติดตามสถานะภายใน รวมทั้งยกข้อยกเว้น 'StopIteration' เมื่อไม่มีค่าที่สามารถส่งคืนได้

วิธีการ zip นำ iterables มารวมเข้าด้วยกันเป็น tuple และส่งกลับเป็นผลลัพธ์

ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -

ตัวอย่าง

my_tuple_1 = ((7, 8), (3, 4), (3, 2))
my_tuple_2 = ((9, 6), (8, 2), (1, 4))

print ("The first tuple is : " )
print(my_tuple_1)
print ("The second tuple is : " )
print(my_tuple_2)

my_result = tuple(tuple(a + b for a, b in zip(tup_1, tup_2))
   for tup_1, tup_2 in zip(my_tuple_1, my_tuple_2))
print("The tuple after summation is : ")
print(my_result)

ผลลัพธ์

The first tuple is :
((7, 8), (3, 4), (3, 2))
The second tuple is :
((9, 6), (8, 2), (1, 4))
The tuple after summation is :
((16, 14), (11, 6), (4, 6))

คำอธิบาย

  • สอง tuples ที่ซ้อนกัน/tuple ของ tuples ถูกกำหนดและแสดงบนคอนโซล
  • มีการซิปและวนซ้ำ และทุกองค์ประกอบใน tuple ที่ซ้อนกันแต่ละรายการจะถูกเพิ่มเข้าไป และสร้าง tuple ใหม่ของ tuples
  • ผลลัพธ์นี้ถูกกำหนดให้กับตัวแปร
  • แสดงเป็นเอาต์พุตบนคอนโซล