ในบทความนี้เป็นองค์ประกอบ เราจะดูวิธีค้นหาความแตกต่างระหว่างองค์ประกอบที่ต่อเนื่องกันสององค์ประกอบสำหรับองค์ประกอบแต่ละคู่ในรายการที่กำหนด รายการนี้มีเพียงตัวเลขเท่านั้นที่เป็นองค์ประกอบ
ด้วยดัชนี
การใช้ดัชนีขององค์ประกอบร่วมกับลูป for เราจะพบความแตกต่างระหว่างองค์ประกอบคู่ที่ต่อเนื่องกัน
ตัวอย่าง
listA = [12,14,78,24,24]
# Given list
print("Given list : \n",listA)
# Using Index positions
res = [listA[i + 1] - listA[i] for i in range(len(listA) - 1)]
# printing result
print ("List with successive difference in elements : \n" ,res) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given list : [12, 14, 78, 24, 24] List with successive difference in elements : [2, 64, -54, 0]
ด้วยการหั่น
Slicing เป็นอีกเทคนิคหนึ่งที่เราสไลซ์คู่ที่ต่อเนื่องกันจากรายการ จากนั้นใช้ฟังก์ชัน zip เพื่อให้ได้ผลลัพธ์
ตัวอย่าง
listA = [12,14,78,24,24]
# Given list
print("Given list : \n",listA)
# Using list slicing
res = [x - y for y, x in zip(listA[: -1], listA[1 :])]
# printing result
print ("List with successive difference in elements : \n" ,res) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given list : [12, 14, 78, 24, 24] List with successive difference in elements : [2, 64, -54, 0]
มีซับ
สามารถใช้วิธีการย่อยจากโมดูลตัวดำเนินการผ่านฟังก์ชันแผนที่ได้ เราใช้เทคนิคการแบ่งองค์ประกอบสองคู่ที่ต่อเนื่องกันอีกครั้ง
ตัวอย่าง
import operator
listA = [12,14,78,24,24]
# Given list
print("Given list : \n",listA)
# Using operator.sub
res = list(map(operator.sub, listA[1:], listA[:-1]))
# printing result
print ("List with successive difference in elements : \n" ,res) ผลลัพธ์
การเรียกใช้โค้ดข้างต้นทำให้เราได้ผลลัพธ์ดังต่อไปนี้ -
Given list : [12, 14, 78, 24, 24] List with successive difference in elements : [2, 64, -54, 0]