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

ฟังก์ชั่นแมป Python เพื่อค้นหาแถวที่มีจำนวนสูงสุด 1’s


ในบทช่วยสอนนี้ เราจะเขียนโปรแกรมซึ่งค้นหาแถวที่มีจำนวนสูงสุด 1 ตัวจากเมทริกซ์โดยใช้ แผนที่ ฟังก์ชัน

สมมติว่าเรามีเมทริกซ์ต่อไปนี้

เมทริกซ์ =[ [0, 0, 1], [1, 1, 1], [1, 1, 0] ]

เราสามารถเขียนโปรแกรมได้หลายวิธี แต่การใช้ แผนที่ เราจะปฏิบัติตามขั้นตอนด้านล่าง

  • เริ่มต้นเมทริกซ์
  • ค้นหาจำนวน 1 ในทุกแถวโดยใช้ map การทำงาน. เก็บไว้ในรายการ
  • พิมพ์ค่าสูงสุดจากรายการ

ตัวอย่าง

## initializing the matrix
matrix = [
   [0, 0, 1],
   [1, 1, 1],
   [1, 1, 0]
]
## function to find number of 1's in a row
def number_of_ones(row):
   count = 0
   for i in row:
      if i is 1:
         count += 1
   return count
## finding the number of 1's in every row
## map returns an object which we converted into a list 
ones_count = list(map(number_of_ones, matrix))
## printing the index of max number from the list 
print(ones_count.index(max(ones_count)))

ผลลัพธ์

หากคุณเรียกใช้โปรแกรมข้างต้น คุณจะได้ผลลัพธ์ดังต่อไปนี้

1

หากคุณมีข้อสงสัยเกี่ยวกับโปรแกรม โปรดระบุในส่วนความคิดเห็น