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

Python의 목록에서 누락된 요소 찾기

<시간/>

숫자가 포함된 목록이 있으면 숫자가 연속적인지 여부를 확인하고 가장 높은 숫자를 최종 값으로 간주하여 숫자 범위에서 누락된 숫자를 찾을 수도 있습니다.

범위 및 최대

not in 연산자를 사용하여 범위에 값이 없는지 확인하는 for 루프를 설계할 수 있습니다. 그런 다음 결과 집합이 되는 새 목록에 추가하여 이러한 모든 값을 캡처합니다.

listA = [1,5,6, 7,11,14]

# Original list
print("Given list : ",listA)

# using range and max
res = [ele for ele in range(max(listA) + 1) if ele not in listA]

# Result
print("Missing elements from the list : \n" ,res)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

Given list : [1, 5, 6, 7, 11, 14]
Missing elements from the list :
[0, 2, 3, 4, 8, 9, 10, 12, 13]

세트 포함

주어진 범위에 대한 모든 고유한 값을 유지하기 위해 set 함수를 적용한 다음 그 범위에서 주어진 목록을 뺍니다. 따라서 이것은 연속된 숫자에서 누락된 값을 포함하는 결과 세트를 제공합니다.

listA = [1,5,6, 7,11,14]

# printing original list
print("Given list : ",listA)

# using set
res = list(set(range(max(listA) + 1)) - set(listA))

# Result
print("Missing elements from the list : \n" ,res)

출력

위의 코드를 실행하면 다음과 같은 결과가 나옵니다. -

Given list : [1, 5, 6, 7, 11, 14]
Missing elements from the list :
[0, 2, 3, 4, 8, 9, 10, 12, 13]