🔢

Python进制表示与转换方法

Mar 23, 2025

Python中的进制表示和转换

四种进制表示

  • 二进制:由0和1组成,每进一位以2为基数,开头以0B表示。
  • 八进制:由0到7组成,每进一位以8为基数,开头以0O表示。
  • 十进制:常用的计数方法,使用0到9表示。
  • 十六进制:由0到9和A到F组成,每进一位以16为基数,开头以0X表示。

进制转换

十进制转二进制

  • 使用短除法,将十进制数不断除以2,记录余数。
  • 例如:
    • 十进制数5:
      • 5 ÷ 2 = 2 余 1
      • 2 ÷ 2 = 1 余 0
      • 1 ÷ 2 = 0 余 1
    • 结果:从下到上余数排列为0101,即二进制表示为0101₂

十进制转八进制

  • 使用短除法,将十进制数不断除以8,记录余数。
  • 例如:
    • 十进制数13:
      • 13 ÷ 8 = 1 余 5
      • 1 ÷ 8 = 0 余 1
    • 结果:从下到上余数排列为15,即八进制表示为15₈

十进制转十六进制

  • 使用短除法,将十进制数不断除以16,记录余数。
  • 例如:
    • 十进制数37:
      • 37 ÷ 16 = 2 余 5
      • 2 ÷ 16 = 0 余 2
    • 结果:从下到上余数排列为25,即十六进制表示为25₁₆

进制反向转换

二进制转十进制

  • 逐位乘以2的幂次方并求和。
  • 例如:二进制0101
    • 0 × 2³ + 1 × 2² + 0 × 2¹ + 1 × 2⁰ = 4 + 0 + 1 = 5

八进制转十进制

  • 逐位乘以8的幂次方并求和。
  • 例如:八进制15
    • 1 × 8¹ + 5 × 8⁰ = 8 + 5 = 13

十六进制转十进制

  • 逐位乘以16的幂次方并求和。
  • 例如:十六进制25
    • 2 × 16¹ + 5 × 16⁰ = 32 + 5 = 37

通过以上方法,可以在各种进制之间进行转换。