min

리스트형 자료 활용 본문

알고리즘

리스트형 자료 활용

minprogramming 2023. 1. 25. 10:33

리스트형 자료 활용

: 리스트형 자료도 문자형 자료와 마찬가지로 여러 연산이 존재한다.

  오늘은 리스트형 자료의 여러 연산자를 살펴보는 시간을 갖도록 하겠다.

 

#리스트 연산자

리스트에는 +와 *의 연산자가 존재한다.

list_a = [1,2,3]
list_b = [4,5,6]
a = list_a + list_b
b = list_a*3

위 코드에서 a와 b를 출력하면 어떻게 될까?

출력해보면 아마 a = [1,2,3,4,5,6] , b = [1,2,3,1,2,3,1,2,3] 으로 출력될 것이다.

여기서 알 수 있는 사실은 리스트 연산자는 문자 연산자와 기능이 동일 하다는 것을 알 수 있다.

 

 

 

 

#리스트 내부 함수 

1. 리스트 안에 요소 추가 함수

 

(1)append(), insert() 

: 위 함수들은 한번에 하나를 추가하는 함수이다.

 

 여기서 append()한수는 추가할 요소를 지정할 수 있지만 어디에 추가할 건지는 정할 수 없다.

 반면 insert()함수는 어디에 추가할지도 지정할 수 있다.

 

 append함수의 사용 방법은 append(요소)이다.

 insert함수의 사용 방법은  insert(인덱스,요소)이다.

list_a = [1,2,3]
#append()
list_a.append(4)

#insert()
list_a.insert(0,0)

 

 위 결과를 차례대로 출력해보자

 첫번째 append()함수를 출력할때는 [1,2,3,4]로 출력된다. 

 이는 append()함수가 리스트의 마지막 요소로 추가시킨다는 사실을 알 수 있다.

 

두번째 insert()함수를 출력할때는 [0,1,2,3,4]로 출력된다.

 이는 insert()함수가 0번째 요소를 바꾸는 것이 아닌 기존의 요소들을 한칸씩 뒤로 당긴다음 0번째 요소를 추가하는 것을   알 수 있다.

 

 

(2) extend()

: 위 함수는 한번에 여러개를 추가하는 함수이다.

 extend함수의 사용방법은 extend(인자)로 이때 인자는 하나밖에 전달할 수 밖에 없다.

list_a = [1,2,3]
list_a.extend([4,5,6])

 

 위 함수의 결과로 list_a에는 [1,2,3,4,5,6]이 담긴 것을 확인할 수 있다.

 이는 문자열 연산자 + 와 같은 기능임을 확인할 수 있다.

 

2. 리스트 안에 요소 제거 함수

(1) 인덱스로 제거

: 인덱스로 제거하는 함수는  pop(), del 함수가 있다.

 먼저 pop()함수를 살펴보자

 pop함수는 한번에 한 요소를 제거할 수 있는 함수이다.

 

 pop함수의 사용방법은  pop(요소)이다.

list_a = [1,2,3]
list_a.pop(1)

 

 위 함수의 결과로 list_a를 출력하면 [1,3]으로 출력되는 것을 확인할 수 있다.

 

 두번째로 del 함수를 살펴보자

 del함수는 한번에 여러개의 요소를 제거할 수 있는 함수이다.

 del함수의 사용방법은 del 리스트[제거하고 싶은 요소의 범위]이다.

list_a = [1,2,3]
del list_a[0:2]

위 함수의 결과로 list_a를 살펴보면 [3]인것을 확인할 수 있다.

 

(2) 값으로 제거

: 값으로 제거하는 함수는 remove()함수가 있다.

 remove()함수의 사용방법은 remove(요소)이며 한번에 하나면 처리할 수 있는 함수이다.

list_a = [1,2,3]
list_a.remove(3)

위 함수의 결과로 list_a를 출력하면 [1,2]으로 출력되는 것을 확인할 수 있다.

 

(3) 모두 제거

: 모두 제거하는 함수는 clear()함수가 있다.

 clear()함수의 사용방법은 아무 인자 없이 그냥 '리스트.clear()'형식으로 사용하면된다.

 

########## 추가

추가로 알아야 할 개념이 있다. 바로 in 명령어 이다.

 

in 명령어의 생김새는  '요소 in 리스트'로 리스트안에 내가 선정한 요소가 있는지 없는 지를 확인하는 명령어 이다.

명령어의 반환값은 True or False로 불 형태의 값이다.

'알고리즘' 카테고리의 다른 글

그리디(greedy) 알고리즘  (0) 2023.01.27
딕셔너리형 자료  (0) 2023.01.26
리스트형 자료  (0) 2023.01.24
문자형 자료  (0) 2023.01.23
자료와 자료형  (0) 2023.01.22