python bin()函数详细教程

bin()函数将一个整数转换成前缀为”0b“的二进制字符串形式,如果参数不是int对象,那它需要定义__index__()方法并返回一个整数;

print(bin(12)) #十进制
print(bin(0o45)) #八进制
print(bin(0xff)) #十六进制

class test:
    def __index__(self):
        return 123
A = test()
print(bin(A)) #支持__index__()方法的对象

输出:

0b1100
0b100101
0b11111111
0b1111011

长度填充

bin()函数返回的二进制字符串都带有”0b“前缀,且长度没有进行填充;

print(bin(0x01))

print(bin(0x01)[2:].zfill(4)) #去除0b前缀,进行填充

输出:

0b1
0001

错误的类型

当向bin()函数传递一个非int对象,或该对象不支持__index__()方法时,将造成TypeError类型错误;

print(bin(0.1))

输出:

Traceback (most recent call last):
  File "C:\Users\hocn\Desktop\test.py", line 3, in <module>
    print(bin(0.1))
TypeError: 'float' object cannot be interpreted as an integer

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/python-bin-function.html

分类: 计算机技术
推荐阅读:
PySide6详细中文教程 PySide6是在Python环境下的一套Qt6 API库。使用PySide6可以轻松创建基于Qt6的GUI程序;PySide6由Qt官方维护。
Requests详细教程 Requests 是一个功能强大、优雅而简单的 Python HTTP库;使用Requests发送网络请求整个过程将变得非常简单。
Python使用webbrowser模块来实现弹出一个网页 如果你希望在别人运行你的程序时弹出一个指向自己网站的页面,你可以通过以下代码来实现:
Python中__getitem__()方法和索引器[]的详细用法 在本文中将详细描述如何使用Python为自定义对象使用索引器和类的__getitem__()方法;
Linux定时执行命令 在Linux下,可以通过一条命令即可实现在指定时间运行某个命令:
MySQL ANY_VALUE() 函数 ANY_VALUE()函数对于启用了ONLY_FULL_GROUP_BY模式,使用GROUP BY 进行查询时很有用;该函数用于抑制启用ONLY_FULL_GROUP_BY模式时导致的值拒绝;