Python进制转换:语法写法与内置函数详解

沈知远
沈知远
发布时间:2026-10-12| 1人浏览过
原创

本文详细解析Python中八进制、十六进制和二进制的字面量书写规范,系统演示oct、hex、bin、int等核心内置函数的用法,并结合字符串格式化技巧,提供安全的数值转换方案与常见报错排查指南。

Python不同进制的字面量书写规范

在Python中,整数可以直接使用前缀标识来声明不同进制的数值。现代Python遵循统一的语法规范:

  • 八进制(Octal):以 0o 或 0O 开头,例如 0o377 等价于十进制的 255。
  • 十六进制(Hex):以 0x 或 0X 开头,例如 0xFF 等价于十进制的 255。
  • 二进制(Binary):以 0b 或 0B 开头,例如 0b11111111 等价于十进制的 255。

核心进制转换函数与输出控制

第1步:使用内置函数快速获取目标进制表示

若需将已知十进制整数转为其他进制的字符串形式,可直接调用对应的内置函数。这些函数均返回带有前缀的字符串对象,便于后续拼接或展示。

>>> oct(255), hex(255), bin(255)
('0o377', '0xff', '0b11111111')

第2步:将字符串安全转换为十进制整数

当需要解析外部输入或配置文件中的进制字符串时,int() 是最可靠的方法。它支持通过第二个 base 参数显式指定原字符串的进制基数,默认基为 10。

>>> int('255')
255
>>> int('0xFF', 16)
255

执行此操作时,若传入非目标基数的字符组合(如用 base=16 解析包含字母 G 的字符串),解释器会抛出 ValueError,此时需核对原始数据格式是否符合该进制规则。

第3步:利用格式化语法指定输出进制形态

除了内置函数,Python 提供了成熟的字符串格式化方案,可在同一行直接输出多进制结果。推荐使用 .format() 或百分号格式化替代 eval(),以避免执行非预期代码的安全隐患。

# 使用 format 方法(o代表八进制,x代表小写十六进制,b代表二进制)
'{0:o}, {1:x}, {2:b}'.format(255, 255, 255)
# 输出: '255, ff, 11111111'

# 使用百分号占位符格式化
'%o, %x, %X' % (255, 255, 255)
# 输出: '377, ff, FF'

简要总结

以上就是Python进制语法与转换方法的详细内容,更多关于Python基础数据处理与类型转换的资料请关注本站其它相关文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。