[ index( arg1, arg2, arg3 ) ]
- index( '찾는 값' ) 을 쓰면, 인덱스를 반환해준다. ( 문자열에서는 find() 함수가 있었다. )
mylist = ['홍길동','박찬호','이용규','강호동']
print(mylist.index('강호동'))
#3
- 단순히 첫번째 값이 아니라 2번째, 3번째 의 값이 궁금하다면 다음과 같이 인덱스 함수를 활용해 줄 수 있다.
mylist = ['홍길동','박승철','박찬호','이용규','강호동', '박승철','홍길동','박승철']
cnt = 0 # 박승철 3개를 찾아보자.
idx = -1
while cnt < 3 :
idx = mylist.index('박승철',idx+1,)
print(f'{idx} 에 위치합니다.')
cnt += 1
'''
1 에 위치합니다.
5 에 위치합니다.
7 에 위치합니다.
'''
- 찾는 값이 없으면 다음과 같이 에러를 반환한다.
mylist = ['홍길동','박찬호','이용규','강호동', '박승철','홍길동']
print(mylist.index('스콘'))
Traceback (most recent call last):
File "c:\Users\Jupiter\Desktop\mygit\LearnInZeroBase\자료구조\리스트 기능.py", line 4, in <module> print(mylist.index('스콘'))
ValueError: '스콘' is not in list
- 리스트 안에 몇개가 들어있는지 모르겠고, 에러를 내기는 싫을 때, 보초법 을 써주면 될 것 같다.
- 보초법 ; 리스트 맨 뒤에 찾고자 하는 값을 넣어준 뒤, 찾을 때 맨 뒤에서 찾고자 하는 값을 찾고나면 검색을 끝낸다.
mylist = ['홍길동','박승철','박찬호','이용규','강호동', '박승철','홍길동','박승철']
idx = -1
mylist.append('홍길동') # 보초법을 써서 홍길동을 찾아보자.
while True :
idx = mylist.index('홍길동',idx+1,)
if idx == len(mylist)-1:
break
print(f'{idx} 에 위치합니다.')
'''
0 에 위치합니다.
6 에 위치합니다.
'''
'자료구조' 카테고리의 다른 글
[자료구조] 딕셔너리, value 값 조회 ( get() ) (0) | 2022.05.23 |
---|---|
[자료구조] 튜플, 튜플 결합 (0) | 2022.05.23 |
[자료구조] 리스트 곱셈, element wise, zip() (0) | 2022.05.23 |
[자료구조] 문자열 뒤집기 ( slice, reversed(), reverse(), for loop ) (0) | 2022.05.23 |
[자료구조] 리스트 아이템 정렬, 순서 뒤집기 ( sort(), reverse() ) (0) | 2022.05.23 |