코딩테스트 공부/코딩테스트 알고리즘 이론

[문자를 순서대로 숫자로? a->1 , b->2]

우석SONG 2022. 1. 17. 04:21

a는 1로 b는 2로 .... 이 순서대로 바꾸고 싶다면 

if 문을 써서 문자 a를 만나면 1이다, b를 만나면 2다 .... 처럼 할 수도 있지만 

ord('알파벳') 함수를 쓰면 쉽게 바꿀 수 있다. 

print(ord('a'))
print(ord('A'))

위 코드의 결과로 다음과 같이 나온다. 

 

97

65

 

따라서 소문자 a를 1로 바꾸는 기준으로 원하는 알파벳을 숫자로 바꾸고 싶다면 다음과 같이 실행시키면된다 

# print(ord('원하는 알파벳')-ord('a')+1)
print(ord('c')-ord('a')+1)

실행결과 : 

3

 

알파벳,숫자,한글 모두 위와 같이 바꿀 수 있다. 

print('0:',ord('0'))
print('1:',ord('1'))
print('9:',ord('9'))
print('a:',ord('a'))
print('A:',ord('A'))
print('Z:',ord('Z'))
print('ㄱ:',ord('ㄱ'))
print('ㅏ:',ord('ㅏ'))
print('ㅑ:',ord('ㅑ'))

실행하면 다음과 같이 결과가 나온다.

0: 48

1: 49

9: 57

a: 97

A: 65

Z: 90

ㄱ: 12593

ㅏ: 12623

ㅑ: 12625