เมื่อจำเป็นต้องแสดงองค์ประกอบที่อยู่ติดกันในรายการ จะมีการกำหนดวิธีการที่ใช้การแจงนับและการวนซ้ำอย่างง่ายเพื่อกำหนดผลลัพธ์
ตัวอย่าง
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน -
def find_adjacent_elements(my_list): my_result = [] for index, ele in enumerate(my_list): if index == 0: my_result.append((None, my_list[index + 1])) elif index == len(my_list) - 1: my_result.append((my_list[index - 1], None)) else: my_result.append((my_list[index - 1], my_list[index + 1])) return my_result my_list = [13, 37, 58, 12, 41, 25, 48, 19, 23] print("The list is:") print(my_list) print("The result is :") print(find_adjacent_elements(my_list))
ผลลัพธ์
The list is: [13, 37, 58, 12, 41, 25, 48, 19, 23] The result is : [(None, 37), (13, 58), (37, 12), (58, 41), (12, 25), (41, 48), (25, 19), (48, 23), (19, None)]
คำอธิบาย
-
มีการกำหนดเมธอดชื่อ 'find_adjacent_elements' ซึ่งรับรายการเป็นพารามิเตอร์ และแจกแจงรายการ
-
มีการสร้างรายการที่ว่างเปล่า
-
องค์ประกอบจะถูกทำซ้ำโดยใช้ 'แจกแจง' และขึ้นอยู่กับค่าของดัชนี ผลลัพธ์จะถูกกำหนด
-
หากค่าดัชนีเป็น 0 องค์ประกอบในดัชนีแรกจะถูกผนวกเข้ากับรายการที่ว่างเปล่า
-
หากดัชนีเท่ากับความยาวของรายการลบ 1 องค์ประกอบในดัชนีก่อนหน้าจะถูกผนวกเข้ากับรายการว่าง
-
มิฉะนั้น ทั้งองค์ประกอบก่อนหน้าและถัดไปจะถูกผนวกเข้ากับรายการที่ว่างเปล่า
-
นอกเมธอด รายการถูกกำหนดและแสดงบนคอนโซล
-
วิธีการนี้ถูกเรียกโดยการส่งผ่านพารามิเตอร์ที่จำเป็น
-
เอาต์พุตจะแสดงบนคอนโซล