[Python] list 자료형 사용법
IT/Python

[Python] list 자료형 사용법

반응형

안녕하세요 오늘은 Python에서 list 자료형 사용법을 정리 해보았습니다.

데이터를 저장하거나 가공하기 위해 C, C++,Java와 같은 거의 모든 언어에서 list 자료형이 존재합니다.

Python에서도 마찬가지로 이 리스트 자료형이 있는데요, 어떻게 사용하는지 한번 알아보겠습니다.

순서대로 리스트 생성, 리스트 표현, 리스트 항목 추가, 리스트 출력,  리스트 삭제, 리스트 변환, 리스트 정렬 순으로 정리해보았습니다.

 

- 비어있는 리스트 생성

>>> test1  = list()

>>> test1

[]

 

- 리스트 표현

test1 = [ 'a', 'b', 'c']

test2 = [ 'd', 'e', 'f']

test3= [test1, test2]

>>> test3

>>> [ [ 'a', 'b', 'c'], [ 'd', 'e', 'f'] ] 

>>> test[0][2]

>>> c

 

- 리스트에 항목 추가

1) append

>>> test1.append('x')

>>> test1

>>> [ 'a', 'b', 'c', 'x']

 

2) insert

>>> test1.insert(1,'x')

>>> test1

>>> [ 'a', 'x', 'b', 'c']

 

- 리스트 출력

1) 슬라이스 이용

>>> test1 = [ 'a', 'b', 'c']

>>> test1[0:2]

>>> ['a','b']

 

2) 슬라이스 이용하여 2칸씩 오른쪽 항목 출력

>>> test1 = [ 'a', 'b', 'c','d','e']

>>> test1[::2]

>>> ['a','c','e']

 

3) 슬라이스를 이용하여 리스트 끝에서 부터 출력 

>>> test1 = ['apple', 'banana', 'pineapple']

>>> test1[::-1]

['pineapple', 'banana', 'apple']

 

3) 슬라이스를 이용하여 리스트 안의 단어 역전하여 출력

>>> test1 = ['apple', 'banana', 'pineapple']

>>> test1[0][::-1]

elppa

 

** 참고

리스트의 슬라이스를 이용할때 어디서부터 0 이고 어디까지인지, 마이너스(-) 표시는 어디를 말하는 것인지 헷갈릴때가 많습니다. 따라서 아래 그림을 참고하고 잘 숙지하면 혼돈을 피할 수 있습니다.

아래 그림을 보면 꽉채워진 동그라미와 빈 동그라미가 보이는데요.

[시작숫자 :끝숫자] 로 표현했을때

처음 시작 숫자의 위치의 값은 무조건 포함입니다.

반면에 끝숫자가 있으면 불포함 이고 그 전 위치까지 입니다.

끝숫자가 포함인 경우는 숫자가 아닌 빈 값일때 가장 맨끝까지 포함하는 범위 밖에 없으므로 헷갈리지 말아야합니다.

파이썬 슬라이싱

 

- 리스트 삭제 

1) del

>>> test1 = [ 'a', 'b', 'c']

>>> del test1[-1]

>>> test1

>>> [ 'a', 'b']

 

2) remove

>>> test1 = [ 'a', 'b', 'c']

>>> test1.remove('b')

>>> test1

>>> ['a','c']

 

3) pop

>>> test1 = [ 'a', 'b', 'c']

>>> test1.pop(1)

>>> b

>>> test1

>>> ['a','c']

 

- 문자열로 변환

1) join

>>> test1 = [ 'a', 'b', 'c']

>>> ','.join(test1)

>>> 'a', 'b', 'c'

 

- 리스트 정렬

1) sort : 리스트 내부 정렬

>>> test1 = ['b','a','c']

>>> test1.sort()

>>> test1

>>> 'a','b','c'

 

2) sorted : 출력만 정렬 내부 리스트는 변하지 않음

>>> test1 = ['b','a','c']

>>> sorted(test1)

>>> 'a,'b','c'

>>> test1

>>> 'b','a','c'

 

리스트를 잘 사용하는 것은 python을 사용하는데 가장 기초가 되기 때문에 정리하여 암기하도록 하는게 중요합니다.

python의 문법이 사용하기 쉽게 되어있지만 정렬 문법만 보아도 test.sort, sorted(test) 처럼 사용하는 방법이 다르며 리스트의 값을 삭제하는 문법인 del과 같은 경우에도 del test[1] 과 같이 사용하기 때문에 혼돈하기 쉽습니다.

혼돈하기 쉬운 문법은 위와 같이 정리하고 암기하여 헷갈리지 않았으면 좋겠네요. 감사합니다.

반응형