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

การคูณแบบกำหนดเองในรายการของรายการใน Python


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

การใช้ลูป

ในแนวทางนี้ เราออกแบบการลากสำหรับลูป วงนอกติดตามจำนวนขององค์ประกอบในรายการและวงในติดตามของแต่ละองค์ประกอบภายในรายการที่ซ้อนกัน เราใช้ตัวดำเนินการ * เพื่อคูณองค์ประกอบของรายการที่สองกับองค์ประกอบตามลำดับของรายการที่ซ้อนกัน

ตัวอย่าง

listA = [[2, 11, 5], [3, 2, 8], [11, 9, 8]]

multipliers = [5, 11, 0]

# Original list
print("The given list: " ,listA)

# Multiplier list
print(" Multiplier list : " ,multipliers )

# using loops
res = [[] for idx in range(len(listA))]
   for i in range(len(listA)):
      for j in range(len(multipliers)):
         res[i] += [multipliers[i] * listA[i][j]]

#Result
print("Result of multiplication : ",res)

ผลลัพธ์

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

The given list: [[2, 11, 5], [3, 2, 8], [11, 9, 8]]
Multiplier list : [5, 11, 0]
Result of multiplication : [[10, 55, 25], [33, 22, 88], [0, 0, 0]]

พร้อมแจงนับ

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

ตัวอย่าง

listA = [[2, 11, 5], [3, 2, 8], [11, 9, 8]]

multipliers = [5, 11, 0]

# Original list
print("The given list: " + str(listA))

# Multiplier list
print(" Multiplier list : " ,multipliers )

# Using enumerate
res = [[multipliers[i] * j for j in x]
      for i, x in enumerate(listA)]

   #Result
print("Result of multiplication : ",res)

ผลลัพธ์

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

The given list: [[2, 11, 5], [3, 2, 8], [11, 9, 8]]
Multiplier list : [5, 11, 0]
Result of multiplication : [[10, 55, 25], [33, 22, 88], [0, 0, 0]]