Python - 大於 N 的 K 的連續範圍


當需要獲取大於‘N’的‘K’的連續範圍時,使用‘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’的值被定義並顯示在控制檯上。

  • 定義一個空列表。

  • ‘previous’的值被定義。

  • ‘beginning’和‘end’的值被定義。

  • 透過列舉列表對其進行迭代。

  • 如果列表中的任何元素等同於另一個值‘k’,則重新定義索引值。

  • 否則,重新定義‘previous’的值。

  • 將起止值附加到空列表。

  • 將其作為輸出返回。

  • 輸出顯示在控制檯中。

更新於: 21 年 9 月 21 日

217 次瀏覽

開啟你的 職業生涯

完成課程認證

立即開始
廣告
© . All rights reserved.