리스트
표현방법
list = [요소1, 요소2, 요소3, ...]
a = []
b = [1,2,3]
c = ['life', 'is', 'too', 'short']
d = [1,2,'life','is']
e = list()
a, b, c, d, e
([], [1, 2, 3], ['life', 'is', 'too', 'short'], [1, 2, 'life', 'is'], [])
a == e # 빈 리스트는 [], list()로 생성할 수 있다.
True
리스트 인덱싱, 슬라이싱
list는 문자열과 같이 인덱싱하고 슬라이싱할 수 있다.
a = [1,2,3]
a[0]
1
a[0]+a[2]
4
a[-1]
3
a = [1,2,3,['a','b','c']]
a[0]
1
a[-1]
['a', 'b', 'c']
a[-1][0]
'a'
a = [1,2,['a','b',['life','is']]] # 삼중 리스트
a[0]
1
a[-1]
['a', 'b', ['life', 'is']]
a[-1][0]
'a'
a[-1][-1]
['life', 'is']
a[-1][-1][-1] # 'is'
'is'
a[-1][-1][0][0] # 'life'의 'l'을 나타낸다.
'l'
a = [1,2,3,4,5]
a[:2]
[1, 2]
a = '12345'
a[:2]
'12'
리스트 연산자
a = [1,2,3]
b = [4,5,6]
a+b
[1, 2, 3, 4, 5, 6]
a = [1,2,3]
3*a # 요소를 세번 반복하게 된다.
[1, 2, 3, 1, 2, 3, 1, 2, 3]
a = [1,2,3]
a[2]+'hi' # 숫자와 문자열이 만나 에러나게된다.
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-30-04d501542b5f> in <module>
1 a = [1,2,3]
----> 2 a[2]+'hi' # 숫자와 문자열이 만나 에러나게된다.
TypeError: unsupported operand type(s) for +: 'int' and 'str'
#'3hi'가 나오려면
a = [1,2,3]
str(a[2])+'hi'
'3hi'
리스트 수정, 삭제
a = [1,2,3]
a[2] = 4
a
[1, 2, 4]
a[1:2]
[2]
a[1:2] = ['a','b','c']
a
[1, 'a', 'b', 'c', 4]
a[1:2]
['a']
a = [1,2,3]
a[1] = ['a','b','c']
a
[1, ['a', 'b', 'c'], 3]
a[1:2]로 범위를 지정해서 수정하는 경우와 a[1] 인덱스를 지정해서 수정하는 것은 결과가 다르다는 것을 주의하자.
a[1:3] = [] # 삭제
a
[1]
a = [1,2,3,4]
del a[0] # 삭제
a
[2, 3, 4]
del a[:2] # 범위로 표현해서 삭제하는 것도 가능함.
a
[4]
참고 도서 : Do It! 점프 투 파이썬
'Programming > Python' 카테고리의 다른 글
Python 조건문, 반복문 (0) | 2019.12.26 |
---|---|
Python 변수, 객체, 복사 (0) | 2019.12.25 |
Python tuple, dictionary, set (0) | 2019.12.25 |
Python 리스트 관련 함수 (0) | 2019.12.25 |
Python 문자열 관련 함수 (0) | 2019.12.25 |