เมื่อจำเป็นต้องได้รับช่วงที่ต่อเนื่องกันของ 'K' ซึ่งมากกว่า 'N' แอตทริบิวต์ 'enumerate' และการวนซ้ำอย่างง่ายจะถูกใช้
ตัวอย่าง
ด้านล่างนี้เป็นการสาธิตสิ่งเดียวกัน
my_list = [3, 65, 33, 23, 65, 65, 65, 65, 65, 65, 65, 3, 65] print("The list is :") print(my_list) K = 65 N = 3 print("The value of K is ") print(K) print("The value of N is ") print(N) my_result = [] beg, end = 0, 0 previous = 1 for index, element in enumerate(my_list): if element == K: end = index if previous != K: beg = index else: if previous == K and end - beg + 1 >= N: my_result.append((beg, end)) previous = element print("The result is :") print(my_result)
ผลลัพธ์
The list is : [3, 65, 33, 23, 65, 65, 65, 65, 65, 65, 65, 3, 65] The value of K is 65 The value of N is 3 The result is : [(4, 10)]
คำอธิบาย
-
รายการถูกกำหนดและแสดงบนคอนโซล
-
ค่าสำหรับ 'K' และ 'N' ถูกกำหนดและแสดงบนคอนโซล
-
มีการกำหนดรายการที่ว่างเปล่า
-
ค่าสำหรับ 'ก่อนหน้า' ถูกกำหนดไว้
-
ค่าสำหรับ 'เริ่มต้น' และ 'สิ้นสุด' ถูกกำหนดไว้
-
รายการจะวนซ้ำโดยแจกแจงรายการ
-
หากองค์ประกอบใดในรายการเทียบเท่ากับค่าอื่น 'k' ค่าดัชนีจะถูกกำหนดใหม่
-
มิฉะนั้น ค่าของ 'ก่อนหน้า' จะถูกกำหนดใหม่
-
ค่าเริ่มต้นและสิ้นสุดจะถูกผนวกเข้ากับรายการที่ว่างเปล่า
-
ส่งคืนเป็นเอาต์พุต
-
เอาต์พุตจะแสดงบนคอนโซล