:: 리스트 (List) ::
앞에선 문자열에서 숫자와 문자를 사용하는방법을 봤지만 이것만으로는 프로그래밍하기에 어려움을 겪는다.
이번에 볼 리스트(List)를 사용해 이를 해결할 수 있다.
:: 리스트의 모양 ::
리스트 = [값1, 값2, 값3, 값4, 값5]
>>> a = []
>>> b = [1, 2, 3]
>>> c = ['name','phone','sex']
>>> d = [1, 2, 3, 'name', 'phone']
>>> e = [1, 2, 3, ['name', 'phone']]
a와 같이 비어있을 수도 있으며 b, c와같이 숫자 또는 문자열을 가지고 있을 수도 있다.
그리고 d처럼 문자열과 숫자값 둘다 가질 수도 있고 e처럼 리스트 자체를 리스트로 가질 수도 있다.
1. 리스트의 인덱싱
>>> a = [1,3,5,7,9]
>>> a[0]
1
>>> a[1]
3
>>> a[2]
5
>>> a[3]
7
>>> a[4]
9
변수 a는 리스트[1, 3, 5, 7,9]를 가지고 있다.
문자열과 같이 숫자는 0부터 세기 때문에 a[0]은 0번자리에 있는 1이, a[1]은 1번자리에 있는 3이 찝어져 나온다.
그럼 리스트를 요솟값으로 가진 리스트도 인덱싱을 할 수 있을까?
>>> a = [1, 3, [5, 7, 9]]
>>> a[0]
1
>>> a[1]
3
>>> a[2]
[5, 7, 9]
변수 a에 숫자 1, 3과 리스트 [5, 7, 9]를 넣었다.
보이는 바와 같이 리스트[5, 7, 9] 자체를 2번자리로 보여준다.
리스트안에 리스트가 들어가면 말 그대로 리스트 그 자체가 요소값이기 때문에
a 는 1, 3, [5, 7, 9] 이 세가지 요소값을 가진 3칸짜리 리스트가 된다.
그럼 리스트속 리스트의 요솟값을 인덱싱으로 찝어올 순 없을까?
>>> a = [1, 3, [5, 7, 9]]
>>> a[0]
1
>>> a[1]
3
>>> a[2]
[5, 7, 9]
>>> a[2][0]
[5]
>>> a[2][1]
[7]
>>> a[2][2]
[9]
변수[값][값]
리스트에서 요솟값을 꺼내오듯이 한번 더 꺼내면 된다.
2. 리스트의 슬라이싱
문자열 슬라이싱과 다를것이 없다.
변수[시작번호 부터~~ : ~~미만 까지]
>>> a = [1, 3, 5, 7, 9]
>>> a[0:3]
[1, 3, 5]
a[0:3]의 의미는 다음과 같음
1 | 3 | 5 | 7 | 9 |
0번 | 1번 | 2번 | 3번 | 4번 |
~~부터 | ~~미만 까지 | |||
O | O | O | X | X |
문자열과 마찬가지로 슬라이싱 한것을 변수에 대입할 수도 있다.
>>> a = [1, 3, 5, 7, 9]
>>> b = a[:3]
>>> c = a[3:]
>>> d = a[1:4]
>>> b
[1, 3, 5]
>>> c
[7, 9]
>>> d
[3, 5, 7]
b는 a리스트의 처음부터 3미만까지
c는 a리스트의 3번부터 끝까지
d는 a리스트의 1번부터 4미만까지
0부터 세는것과 슬라이싱의 순서 및 사용법은 이전 글을 참고하면 된다.
https://junk-storage.tistory.com/30?category=847611
'IT > 파이썬3 공부' 카테고리의 다른 글
[파이썬 기초] 튜플 인덱싱과 슬라이싱, 함수 (0) | 2020.05.05 |
---|---|
[파이썬 기초] 리스트 -2 연산과 함수사용 (0) | 2020.05.01 |
[파이썬 기초] 문자열 -3 (포매팅 2) (0) | 2020.04.28 |
[파이썬 기초] 문자열 -3 (포매팅 1) (0) | 2020.04.27 |
[파이썬 기초] 문자열 -2 (인덱싱과 슬라이싱) (0) | 2020.04.26 |
최근댓글