Python——從字串列表中摘取連續同類元素範圍


當需要從列表中提取連續的相似元素的範圍時,可以使用簡單的迭代和“追加”方法。

範例

以下是對其進行演示 −

my_list = [12, 23, 23, 23, 48, 48, 36, 17, 17]

print("The list is : ")
print(my_list)

my_result = []

index = 0
while index < (len(my_list)):
   start_position = index
   val = my_list[index]

   while (index < len(my_list) and my_list[index] == val):
      index += 1
   end_position = index - 1

   my_result.append((val, start_position, end_position))

print("The my_result is :")
print(my_result)

輸出

The list is :
[12, 23, 23, 23, 48, 48, 36, 17, 17]
The my_result is :
[(12, 0, 0), (23, 1, 3), (48, 4, 5), (36, 6, 6), (17, 7, 8)]

解釋

  • 定義了一個列表並顯示在控制檯上。

  • 建立了一個空列表。

  • 將索引的值定義為 0。

  • 對列表進行迭代,並放置一個“while”條件。

  • 這將檢查特定索引是否小於列表的長度,以及索引處的特定值是否與先前定義的值相同。

  • 如果是,則增加索引。

  • 否則,將索引減 1 並賦值給另一個變數。

  • 將整數追加到空列表中。

  • 這是顯示在控制檯上的輸出。

更新於: 2021 年 9 月 8 日

217 次瀏覽

開啟你的 職業生涯

完成課程,獲取認證

開始
廣告