본문 바로가기

Data Scientist

파이썬(리스트: 리스트 연산자, append, insert, extend, del, pop, remove, clear, in/not in)

반응형

리스트(list) [ ]

파이썬에서 리스트의 의미는 여러가지 자료를 저장할 수 있는 자료이다. 

지금까지 활용한 숫자나 문자, 수식 등이 개별적인, 독립적인 '자료'였다면 리스트는 이러한 자료들을 모아서 사용할 수 있게 해주는 특별한 형태의 자료를 말한다. 

 

이와 같이 리스트를 생성하는 방법은 대괄호 안에 자료를 입력하면 된다. 이 때 대괄호 내부에 넣는 자료를 요소(element)라고 한다. 

리스트 기호인 대괄호 [ ] 안에 들어간 숫자를 인덱스(index)라고 부른다. 파이썬은 0부터 시작하는 언어다.

인덱스는 음수 또한 가능하다. 그리고 리스트 접근 연산자를 이중으로 사용할 수 있다. 마지막의 경우 4번째에 위치한 '문자열'에 해당하면서 두번째에 위치한 것을 출력하도록 했다. 

이렇게 요소 자체의 값을 정해줘서 변경하는 것 또한 가능하다. 기존의 273에서 '체체체체인지'로 바뀐 것을 확인할 수 있다.  class 또한 int에서 str로 바뀐 것을 확인할 수 있다. 

리스트 안에 리스트를 사용할 수도 있다. 리스트 안 요소끼리의 곱 또한 가능하다. 

 

리스트 연산자: 연결( + ), 반복( * ), len( )

리스트에 요소 추가하기: append, insert, extend

# 뒤에 추가: 리스트.append( 요소 )

# 중간에 추가: 리스트.insert(위치, 요소)

append의 경우 리스트 뒤에 요소를 추가하지만 insert는 인덱스를 지정해서 넣어줄 수 있다. 

한 번에 여러 요소를 추가하고 싶을 때는 extend([ ]) 함수를 사용한다. 매개변수로 리스트를 입력한다.

이렇게 리스트를 이용해서 한 번에 연결해주는 것이 가능하다.

단순히 연결연산자로 list_a 와 list_b를 더해주었을 때는 list_a는 변화가 없지만, extend 함수를 사용할 경우 list_a 자체에 직접적인 변화가 있다.

이렇게 원본에 어떠한 영향도 주지 않는 것을 비파괴적이라고 표현하고, append( ), insert( ), extend( ) 함수와 같이 리스트에 직접적인 영향을 주는 함수 또는 연산을 파괴적이라고 표현한다. 

 

리스트에 요소 제거하기

1. 인덱스로 제거하기: del, pop

del 리스트명[인덱스]

리스트명.pop(인덱스)

pop( ) 함수의 매개변수에 아무 것도 입력하지 않으면 자동으로 -1이 들어가는 것으로 취급해서 마지막 요소를 제거한다

del을 사용할 경우 범위를 지정하여 리스트의 요소를 한꺼번에 제거할 수도 있다. 

 

2. 값으로 제거하기: remove

리스트.remove(값)

remove( ) 함수로 지정한 값이 리스트 내부에 여러 개 있어도 가장 먼저 발견되는 하나만 제거한다. 

만약 리스트에 중복된 여러 개의 값을 모두 제거하려면 반복문(while)과 조합해서 사용해야 한다.

 

3. 모두 제거하기: clear

리스트.clear( )

 

리스트 내부에 있는지 확인하기: in / not in 연산자

값 in 리스트

 

 

 

 

 

😁

출처:

혼자공부하는파이썬(윤인성) https://www.youtube.com/watch?v=dYykqm41jfY&list=PLBXuLgInP-5kr0PclHz1ubNZgESmliuB7&index=20

 

반응형