배운 것/Python

[알고리즘] 새로운 리스트를 생성한 후 원소의 위치(인덱스) 찾기

MOR1ATY 2022. 1. 25. 17:53

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
def seq_search(a, key):
    
    i = 0
    
    for i in range(len(a)):
        if a[i] == key:
            return i
    return -1
 
print('실수를 검색합니다.')
print('주의: "End"를 입력하면 종료합니다.')
 
idx = 0
= []          
 
while True:
    b = input(f'x[{idx}]:')
    if b == "End":
        break
    else:
        x.append(b)
        idx += 1
 
print(x) # 리스트 'x'확인용
 
key = input(f'검색할 값을 입력하세요.:')
seq_search(x, key)
print(f'검색값은 b[{seq_search(x,key)}]에 있습니다.')
 
 
cs

 

함수 'seq_search(a, key)'는 리스트 a에서 key값의 인덱스 i를 반환하는 함수이다.

이를 이용해, 먼저 새로운 리스트를 생성하고 (리스트를 확인한 후) 그 리스트 내에서 원소의 위치를 찾는 프로그램을 만들었다.

출력되는 결과는 다음과 같다.

 

 

새로운 리스트를 "End"를 입력할 때까지 생성하게 하는 알고리즘이 너무 어려워서 거의 세 시간 정도 걸린 코드다. 그래서 별건 아니지만 억울해서 기록해두고자 글을 올린다.