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

โปรแกรม Python เพื่อพิมพ์แถวที่ความถี่ขององค์ประกอบทั้งหมดมากกว่าK


เมื่อจำเป็นต้องพิมพ์แถวที่ความถี่ขององค์ประกอบทั้งหมดมากกว่า K จะมีการกำหนดวิธีการที่ใช้พารามิเตอร์สองตัว และใช้ตัวดำเนินการ "ทั้งหมด" และการวนซ้ำเพื่อให้ได้ผลลัพธ์

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

ตัวอย่าง

def frequency_greater_K(row, K) :
   return all(row.count(element) > K for element in row)
my_list = [[11, 11, 32, 43, 12, 23], [42, 14, 55, 62, 16], [11, 11, 11, 11], [42, 54, 61, 18]]
print("The tuple is :")
print(my_list)
K = 1
print("The value of K is :")
print(K)
my_result = [row for row in my_list if frequency_greater_K(row, K)]
print("The result is :")
print(my_result)

ผลลัพธ์

The tuple is :
[[11, 11, 32, 43, 12, 23], [42, 14, 55, 62, 16], [11, 11, 11, 11], [42, 54, 61, 18]]
The value of K is :
1
The result is :
[[11, 11, 11, 11]]

คำอธิบาย

  • มีการกำหนดเมธอดที่ชื่อ 'frequency_greater_K' ซึ่งรับค่าแถวและ K เป็นพารามิเตอร์ และส่งคืนการเปรียบเทียบระหว่างจำนวนองค์ประกอบและคีย์เป็นเอาต์พุต

  • รายการของรายการถูกกำหนดและแสดงบนคอนโซล

  • ความเข้าใจรายการใช้เพื่อวนซ้ำรายการ และมีการเรียกใช้เมธอดในทุกรายการ

  • ผลลัพธ์นี้ถูกกำหนดให้กับตัวแปร

  • นี่คือเอาต์พุตที่แสดงบนคอนโซล