python

[python] 파이썬 리스트 요소 삭제 / 리스트 탐색 / 리스트 정렬

테토 2022. 7. 11. 15:01
반응형

 

python 리스트 관련 글을 추가로 가지고 왔습니다.

 

리스트는 다루는 방법이 굉장히 다양해서 많은 방법을 알고 있어야 여러 방향으로 응용이 가능합니다.

이 글을 읽고 직접 해보시면서 도움이 되셨으면 좋겠습니다.

 

 

 

리스트안의 요소 삭제

 

list1 = list(range(10))
list2 = list(range(5))
list3 = list1 + list2 #[0~9, 0~4] 를 가진 list3생성

list3.remove(1) # 1이라는 값을 삭제, 두 개 이상일 시에 맨 앞 숫자만 삭제
print(list3)

del(list3[1]) # list3의 1번 인덱스를 삭제
print(list3)

del(list3[4:7]) # list3의 4~6번 인덱스 삭제
print(list3)


## 결과 ##
[0, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4]
[0, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4]
[0, 3, 4, 5, 9, 0, 1, 2, 3, 4]

 

 

리스트 pop

 

list3 = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4]
print(list3)

a = list3.pop() # list3의 마지막 요소를 반환하고 삭제
print(a)
print(list3)

b = list3.pop(4) # list3의 4번 인덱스를 반환하고 삭제
print(b)
print(list3)


## 결과 ##
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3, 4]
4
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 1, 2, 3]
4
[0, 1, 2, 3, 5, 6, 7, 8, 9, 0, 1, 2, 3]

 

 

 

리스트 전체 삭제

 

 

list4 = [10, 40, 50, 602, 60, 303]
list5 = list(range(4,10))
list6 = list(range(20))
print(list4)
print(list5)
print(list6)

list4.clear() # clear() 함수 사용하여 요소 전체 삭제
print(list4)

del list5[:] # [:] 는 리스트의 모든 요소를 말하기 때문에 모두 삭제됨
print(list5)

list6[:] = [] # 리스트의 모든 요소 선택 후 빈 리스트로 만듦
print(list6)


## 결과 ##
[10, 40, 50, 602, 60, 303]
[4, 5, 6, 7, 8, 9]
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
[]
[]
[]

 

 

 

리스트 탐색

 

리스트에서 원하는 값을 찾는 방법

 

list7 = [0, 1, 2, 3, 4, 1, 2, 3]


print(list7.index(1)) # 1의 인덱스를 찾아서 반환, 값이 여러 개 있을 때는 앞에 있는 값 반환, 없으면 에러

print(list7.index(1, 2, 7)) # index(값, 시작인덱스, 끝인덱스), 인덱스 값으로 범위 지정 가능


## 결과 ##
1
5

 

 

 

리스트 정렬

 

 

list8 = [23, 34, 33, 18, 17, 76, 55, 58, 28]

list9 = sorted(list8) # sorted() 함수로 list8을 오름차순 정렬해 list9에 저장
print(list8)
print(list9)

list8.sort() # sort() 함수를 이용하여 list8을 오름차순 정렬
print(list8)

list10 = sorted(list8, reverse=True) # sorted함수를 사용하고, 역순을 True로 설정하여 내림차순 정렬하여 list10에 저장
print(list10)

list8.reverse() # reverse() 함수로 내림차순 정렬
print(list8)


## 결과 ##
[23, 34, 33, 18, 17, 76, 55, 58, 28]
[17, 18, 23, 28, 33, 34, 55, 58, 76]
[17, 18, 23, 28, 33, 34, 55, 58, 76]
[76, 58, 55, 34, 33, 28, 23, 18, 17]
[76, 58, 55, 34, 33, 28, 23, 18, 17]

 

 

sort()함수와 sorted()함수의 차이를 잘 알고 있어야합니다.

 

 

리스트 요소 개수 세기

 

list11 = [1, 1, 3, 3, 4, 2, 1, 4, 2, 1, 1, 2, 1]

print(list11.count(1)) # list11의 1의 개수 출력


## 결과 ##
6

 

 

 

지금까지 리스트를 다루는 방법들을 알아봤습니다.

다음 글에서는 딕셔너리를 다루는 방법을 알아보겠습니다.

반응형