Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

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만큼 감소하고 다른 변수에 할당됩니다.

  • 정수는 빈 목록에 추가됩니다.

  • 콘솔에 표시되는 출력입니다.