본문 바로가기

Baekjoon

백준 10809번 : 알파벳 찾기

<소스코드>

S = input()						# 값 입력
alphabet = list(range(97,123))	# 변수에 소문자 a-z까지의 아스키코드 값을 리스트로 저장
for i in alphabet :			
    print(S.find(chr(i)))

 

 

find() 함수

- str 클래스 내장함수로 문자 및 문자열의 위치를 찾아준다

- 변수.find(찾을 문자 및 문자열) / 변수.find(찾을 문자 및 문자열, 시작위치, 끝위치)

: find 함수는 찾는 값이 없을 때 -1을 출력한다

: 문자열을 찾을 수 있는 변수는 문자열만 사용이 가능하다

: 리스트, 튜플, 딕셔너리 자료형에서는 find 함수를 사용할 수 없다

 

a = 'baekjun' 			# 문자 위치 찾기
print(a.find('j'))
---------------------------------------
4

b = 'algorithm'			# 문자열 위치 찾기
print(b.find('gori'))
---------------------------------------
2

c = 'code'				# 범위 지정
print(c.find('e',1,3))
---------------------------------------
-1

 

index() 함수

- 배열에서 값의 위치를 찾아주는 함수, 중복된 값이 있으면 가장 최소의 위치를 리턴

- 변수. index(문자/숫자), 변수.index(문자/숫자, 시작위치, 끝위치)

: 찾는 문자가 없는 경우 ValueError 에러가 발생한다

: 문자열, 리스트, 튜플 자료형에서 사용 가능하고

  딕셔너리 자료형에는 사용할 수 없어 AttributeError에러가 발생한다

 

 

a = [1,2,3,4,5,6,7,8,9,10]   #리스트에서 값의 위치 찾기
print(a.index(2))
------------------------------------------------------
1

b = [1,2,3,4,5,6,7,8,9,10,11]  #범위 지정해주기
print(b.index(10,2,10))    # index(value, start, end)
-------------------------------------------------------
9

c = 'baekjun'				# 문자열에서 특정 문자 위치 찾기
print(c.index('j'))
--------------------------------------------------------
4

d = 'algorithm'				# 문자열에서 특정 문자 위치 범위 내에서 찾기
print(d.index('g', 2, 7)
--------------------------------------------------------
2

 

chr() 함수

아스키코드에 해당하는 숫자를 문자열로 변환시키는 함수

즉, 아스키코드(숫자) -> 문자 로 환하는 함수

 

a = 65				# 아스키코드값을 문자로 변환
print(chr(a))
-----------------------------------
A

 

 

<참고 사이트>

https://ooyoung.tistory.com/78

https://pydole.tistory.com/entry/Python-index-%ED%95%A8%EC%88%98-%EB%B0%B0%EC%97%B4%EC%97%90%EC%84%9C-%EC%9B%90%ED%95%98%EB%8A%94-%EA%B0%92%EC%9D%98-%EC%9C%84%EC%B9%98-%EC%B0%BE%EA%B8%B0

 

'Baekjoon' 카테고리의 다른 글

백준 1157번 : 단어 공부  (0) 2021.07.24
백준 2675번 : 문자열 반복  (0) 2021.07.24
백준 11720번 : 숫자의 합  (0) 2021.07.23
백준 11654번  (0) 2021.07.23
백준 6단계 함수 - 15596번, 4673번, 1065번  (0) 2021.06.25