파이썬으로 진법간 변환은 매우 간단하게 해결할 수 있습니다.
그래도 기본적인 진법간의 변환 방법에 대한 이해가 필요합니다.
진법간 변환을 하는 방법에 대한 이해는 다음을 살펴보길 바랍니다.
2014/05/02 - [컴퓨터구조] - 2진수를 10진수로 변환하는 방법(진수 간 변환 방법들)
2014/02/24 - [컴퓨터구조] - 10진수를 2진수로 변환하는 방법
임의의 진수를 10진수로 변환
int('x', n) : n진수 x를 10진수로 변환
x에 해당하는 수를 문자로 전달하는 것에 주의하자. n진수 ->x를 -> int(10진수)로 변환 이렇게 뒤에서부터 읽어보면 기억하기 쉽다.
주의할 점은 32진수가 초과되면 안 된다. 그렇게 사용할 일도 없겠지만 말이다.
10진수를 임의의 진수로 변환
파이썬에서 제공하는 함수는 10진수를 8진수로, 10진수를 16진수로 변환하는 방법이다.
이외의 10진수에서 다른 진수를 바꾸려면 먼저, 생각해야 할 점이 있다.
10진수를 x진법으로 바꾼다면 x로 나누면서 나머지를 조합해야 한다. 만약 16진수로 바꾼다면 나머지가 10이상일 경우에 대해서 처리해야 한다. 10진법 이하의 진법의 경우는 나머지가 10미만이므로 if문으로 나머지가 >9인 경우에 대해서 따로 처리하면 범용적으로 사용할 수 있게 된다.
다음은 간단한 10진법을 X진법으로 변환하는 간단한 함수다.
100을 16진수로 변환
r=chr(ord('a')+r-10) 이 부분이 나머지가 9를 초과하는 경우 나머지를 문자열로 바꾸는 처리를 하는 부분이다.
2015/07/12 - [프로그래밍/python] - 파이썬(python)의 형변환
나머지 부분은 이해하기 쉽다.