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

ตรวจสอบว่าองค์ประกอบมีอยู่ใน tuple ของ tuples ใน Python


Python Tuples สามารถซ้อนกันได้ เราสามารถมีทูเพิลที่มีองค์ประกอบเป็นทูเพิลได้เช่นกัน ในบทความนี้ เราจะมาดูว่าจะทราบได้อย่างไรว่าค่าที่กำหนดนั้นมีอยู่ในองค์ประกอบหนึ่งในทูเพิลหรือไม่

กับอะไรก็ได้

ฟังก์ชัน any สามารถใช้เพื่อตรวจสอบว่าค่าที่กำหนดมีอยู่เป็นองค์ประกอบใน subtuples ย่อยใดๆ ที่มีอยู่ใน tuple หรือไม่โดยใช้ for loop เราใส่เงื่อนไขทั้งหมดสำหรับการตรวจสอบในประโยค if และ else

ตัวอย่าง

Atuple = [('Mon',10),('Tue',8),('Wed',8),('Thu',5)]

#Given tuple
print("Given tuple: ",Atuple)

# Use any
if any('Tue' in i for i in Atuple):
   print("present")
else :
   print("Not present")


if any(3 in i for i in Atuple):
   print("present")
else :
   print("Not present")

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

Given tuple: [('Mon', 10), ('Tue', 8), ('Wed', 8), ('Thu', 5)]
present
Not present

ด้วย itertools.chain

ฟังก์ชันลูกโซ่ในโมดูล itertools จะคืนค่าองค์ประกอบจากการวนซ้ำครั้งแรกจนกระทั่งหมด จากนั้นจึงไปยังการวนซ้ำถัดไป จนกว่าการวนซ้ำทั้งหมดจะหมด ดังนั้นเราจึงใช้มันกับ tuple ที่กำหนดเพื่อขยายเนื้อหาทั้งหมด และตรวจสอบการมีอยู่ของค่าที่ต้องการโดยใช้ if clause

ตัวอย่าง

import itertools
Atuple = (('Mon',10),('Tue',8),('Wed',8),('Thu',5))

#Given tuple
print("Given tuple: ",Atuple)

# Use chain
if ('Wed' in itertools.chain(*Atuple)) :
print("Wed is present")
else :
   print("Wed is not present")


if (11 in itertools.chain(*Atuple)) :
   print("11 is present")
else :
   print("11 is not present")

ผลลัพธ์

การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -

Given tuple: (('Mon', 10), ('Tue', 8), ('Wed', 8), ('Thu', 5))
Wed is present
11 is not present