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

ค้นหาองค์ประกอบทั้งหมดนับในรายการใน Python


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

ด้วย For loop

ในแนวทางนี้ เราใช้ two for loops เพื่อดำเนินการตามโครงสร้างการซ้อนของ list ในโปรแกรมด้านล่าง เรามีรายการซ้อนซึ่งองค์ประกอบภายในมีจำนวนองค์ประกอบต่างกันอยู่ภายใน นอกจากนี้เรายังใช้ฟังก์ชัน len() เพื่อคำนวณความยาวของรายการที่แบน

ตัวอย่าง

listA = [[2,9, 6], [5, 'a'], [0], [12,'c', 9, 3]]

# Given list
print("Given list : ",listA)

res = len([x for y in listA for x in y])

# print result
print("Total count of elements : " ,res)

ผลลัพธ์

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

Given list : [[2, 9, 6], [5, 'a'], [0], [12, 'c', 9, 3]]
Total count of elements : 10

มีโซ่

ในแนวทางนี้ เราใช้วิธีลูกโซ่ซึ่งดึงเอาองค์ประกอบภายในทั้งหมดออกจากรายการโดยทำให้แบนราบ จากนั้นจึงแปลงเป็นรายการ สุดท้ายใช้ฟังก์ชัน len() เพื่อให้พบการนับองค์ประกอบในรายการ

ตัวอย่าง

from itertools import chain
listA = [[2,9, 6], [5, 'a'], [0], [12,'c', 9, 3]]

# Given list
print("Given list : ",listA)

res = len(list(chain(*listA)))

# print result
print("Total count of elements : " ,res)

ผลลัพธ์

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

Given list : [[2, 9, 6], [5, 'a'], [0], [12, 'c', 9, 3]]
Total count of elements : 10