임의의 베이스에서 정수를 문자열로 변환
Python에서는 int(str, base) 함수를 사용하여 문자열에서 정수를 쉽게 변환할 수 있습니다. . 그러나 정수에서 문자열을 생성하는 역연산은 더 어려울 수 있습니다.
임의 기반을 위한 사용자 정의 솔루션
다음 코드는 사용자 정의 솔루션인 numberToBase를 정의합니다. 임의의 정수 n을 임의의 진수 b의 문자열로 변환할 수 있습니다:
def numberToBase(n, b): if n == 0: return [0] digits = [] while n: digits.append(int(n % b)) n //= b return digits[::-1]
이 함수는 다음과 같은 반복 나눗셈 원리에 따라 작동합니다. 베이스 ㄴ. b로 나눈 n의 나머지를 반복적으로 계산하여 숫자 목록에 추가합니다. 이 과정은 n이 0이 될 때까지 계속됩니다. 그런 다음 숫자를 뒤집어 기수 b로 올바른 표현을 얻습니다.
사용 예
큰 숫자를 기수 577로 변환하려면:
print(numberToBase(67854 ** 15 - 102, 577))
출력:
[4, 473, 131, 96, 431, 285, 524, 486, 28, 23, 16, 82, 292, 538, 149, 25, 41, 483, 100, 517, 131, 28, 0, 435, 197, 264, 455]
이 결과는 다른 결과로 변환될 수 있습니다.
내장 함수에 비해 장점
bin, oct, hex 등의 내장 함수와 달리 numberToBase 함수는 다음과 같은 몇 가지 장점을 제공합니다.
위 내용은 Python에서 임의의 기준으로 정수를 문자열로 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!