ホームページ >バックエンド開発 >Python チュートリアル >Python で任意の基数の整数を文字列に効率的に変換するにはどうすればよいですか?
Python では、int() 関数は、指定された基数を持つ文字列から整数を簡単に作成します。ただし、整数を文字列に変換する逆の操作は難しい場合があります。私たちは、次の条件を満たす一般的なソリューション int2base(num,base) を開発することを目指しています。
int(int2base(x, b), b) == x
これは、任意の基数を処理する驚くほど単純なソリューションです。
def numberToBase(n, b): if n == 0: return [0] digits = [] while n: digits.append(int(n % b)) n //= b return digits[::-1]
この関数数値 n を基数 b に変換し、数字のリストを返します。たとえば、大きな数値を基数 577 に変換するには:
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]
提供されたソリューションは、組み込み関数に必要な機能がない場合にカスタム関数が必要になる場合があることを示しています。ここで、int2base() は次の方法で制限を克服します。
以上がPython で任意の基数の整数を文字列に効率的に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。