-
반응형
이번 포스팅은 리스트 자료형에 관련된 함수, 메소드에 관한 마지막 포스팅 입니다.
● 리스트의 인덱스 값 찾기
리스트에서 특정 원소의 인덱스를 알고 싶을 때 사용합니다.
같은 요소값이 여러 개 일 경우는 첫번째 값의 위치를 알려 줍니다.
Index( 요소값 ) 의 형식으로 사용합니다.
>>> x = [1, [3, 4], 5, [6, 7, [8, 9]], 10]
## 5의 인덱트 값이므로 2 입니다.
>>> x.index(5)
2
>>> x.index([3,4])
1중첩리스트는 지원하지 않고 1 차원만 지원합니다.
>>> x.index([8,9])
Traceback (most recent call last):
File "<pyshell#29>", line 1, in <module>
x.index([8,9])
ValueError: [8, 9] is not in list같은 값이 여러 개 일 경우는 처음 인덱스 값을 반환합니다.
>>> x = [1,2,3,4,3,5]
>>> x.index(3)
2리스트에 없는 값일 경우는 오류를 발생합니다.
-1 이라도 반환하는 것과 오류를 반환하는 것은 큰 차이가 있습니다.
-1을 반환하는 것은 오류가 아니기 때문입니다.
왜 큰 차이인지는 프로그램 작성시에 오류 일 경우 프로그램의 동작을 멈추도록 보통 프로그램 하는데 이때 값이 없더라도 프로그램은 계속 동작을 원할 경우 프로그램 코드에 반영하여 작성하기 때문에 반환 값이 오류인지? 아닌지는 중요한 내용입니다.
여기서는 이 정도만 기억하고 넘어가주세요.
>>> x.index(10)
Traceback (most recent call last):
File "<pyshell#32>", line 1, in <module>
x.index(10)
ValueError: 10 is not in list
>>>● 리스트의 같은 요소값의 개수
리스트에서 특정 요소 값의 개수를 반환해 줍니다.
사용 방법은 count(요소값) 입니다.
>>> x = [1, 2, 3, 4, 3, 5]
## 3이 2개 있으므로 2를 반환합니다.
>>> x.count(3)
2
## 5는 1개 있으므로 1을 반환합니다.
>>> x.count(5)
1
## 10의 값은 없으므로 0을 반환합니다. 오류를 반환하지 않고 0을 반환합니다.
>>> x.count(10)
0
>>> x = [1, [3, 4], 5, [6, 7, [8, 9]], 10]
## 중첩 리스트에서 찾기 예제 입니다.
>>> x.count( [3,4])
1
## 1차원에서 찾기 때문에 0을 반환합니다.
>>> x.count([8,9])
0
## 1차원에서 찾기 때문에 1이 여러 개 있어도 1개를 반환합니다.
>>> x = [1, [1,2], [1,4], 2, 3]
>>> x.count(1)
1● 리스트의 길이
포스팅하면서 예제에서 쓰인 적이 있는 len 에 관한 내용입니다. 리스트의 길이를 반환합니다.
정확히는 리스트의 전체 개수 입니다.
문자열에서는 1자가 1의 크기를 같지만 리스트는 중첩 리스트도 있기 때문에 정확히는 원소의 개수라고 생각하면 됩니다.
>>> x = [1, 2, 3, 4, 3, 5]
>>> len(x)
6
## 중첩 리스트는 1개로 계산하기 때문에 5를 반환합니다.
>>> x = [1, [1,2], [1,4], 2, 3]
>>> len(x)
5
## 비교를 위해 문자열(string)에 관한 예제 입니다.
>>> x = "0123456789"
>>> len(x)
10
>>> x = 'abcdef'
>>> len(x)
6
>>> x = 'abc def'
>>> len(x)
7
>>>문자열과 리스트에 관련된 메소드나 함수들이 가장 많기 때문에 이제 자료형에 대해서는 거의 끝 마친거나 다름없습니다.
다음 포스팅에서는 나머지 자료형에서 다루지 않았던 연산 등에 대해 다룰 예정이지만, 그렇게 많지 않습니다.
반응형'IT 이야기 공간 > 프로그램 언어' 카테고리의 다른 글
파이썬 딕셔너리 복사 (1) 2020.06.19 파이썬 딕셔너리 요소 추가 수정 삭제 방법 (0) 2020.06.18 파이썬 리스트 정렬하기 (0) 2020.06.16 파이썬 리스트 연산하기 (0) 2020.06.15 파이썬 리스트 함수 요소 수정 및 여러개 삭제하는 방법 (0) 2020.06.14