파이썬

문자열 치환 함수 maketrans()

gyuho.kim 2018. 12. 24. 15:23

Syntax

STRING.maketrans( input_tab, output_tab )


input_tab 안에 있는 문자열들을 output_tab 문자열과 같은 위치의 문자와 매칭시킨 해석 테이블을 반환하는 메소드


Parameters

input_tab : 원래 문자열 모음

output_tab : 바꿀 문자열 모음


Return

string.translate( table ) 메소드에서 사용될 traslation table을 반환


Sample

def transChar(str):
in_c= "abcdefghijklmnopqrstuvwxyz"
out_c = "cdefghijklmnopqrstuvwxyzab"
plain = str.maketrans(in_c, out_c)
print(str.translate(plain))

알파벳을 두 글자씩 Unshift 된 형태로 치환하는 함수


* 원래 작성했었던 파이썬 소스코드
def decode():
plain = []
for char in cipher:
if char.isalpha():
new_char = ord(char) + 2
if new_char < 123:
plain.append(chr(new_char))
else:
new_char = new_char - 26
plain.append(chr(new_char))
else:
plain.append(char)

for i in plain:
print(i,sep='', end='')


확실히 만들어져 있는 메소드를 이용하면 실제로 코드 라인이 확 줄어드는 것을 체감하게 됨.



- 출처 -