首頁 > 後端開發 > Python教學 > 如何在 Python 中將整數轉換為任意基數的字串?

如何在 Python 中將整數轉換為任意基數的字串?

Patricia Arquette
發布: 2024-12-03 22:05:16
原創
646 人瀏覽過

How Can I Convert Integers to Strings in Arbitrary Bases in Python?

將整數轉換為任意基數的字串

在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]
登入後複製

函數的工作原理是重複除以基斯灣它重複計算n 除以 b的餘數並將其加到數字列表中。過程一直持續到 n 變為零。然後將數字反轉以獲得以 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 版本(從2.2開始)
  • 轉換為任意基數(不限於2、8 或16)
  • 返回數字列表,允許輕鬆轉換為其他基數或字串表示

以上是如何在 Python 中將整數轉換為任意基數的字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板