首 页IT知识库翔宇问吧收藏内容
当前位置:算搜IT乐园IT知识库Python

Python bin()函数

减小字体增大字体作者:本站  来源:本站整理  发布时间:2021-08-10 10:34:48

bin()是Python的一个内置函数,其作用是返回一个整数的二进制表示形式的字符串。该函数的参数可以是一个十进制的整数,也可以是其它进制的整数。返回的字符串以'0b'开始,表示这是一个二进制形式的字符串。其它非整数类型,如果其实现了__index__()函数,也可以使用该函数。

bin()函数的语法格式

官方文档给出的bin()函数的语法形式如下所示:

bin(x)

参数

x:是一个整数数值,可以是十进制的整数,也可以是其它进制的整数,但不可以是浮点数。该参数也可以是在类内部实现了__index__()函数的对象。

返回值

该函数的返回值是x的一个二进制形式的字符串,该字符串以'0b'开始。

python bin()函数

bin()函数使用示例

#Python 3.8.2 [MSC v.1916 64 bit (AMD64)] on win32
>>>
>>>x = 10
>>>print(bin(x))
0b1010
>>>print(type(bin(x)))
<class 'str'>
>>>

从上面的例子中可以看出,bin()函数把整型数10转换成了二进制形式:0b1010,同时使用type(bin(x))可以看出,bin()函数返回的是一个字符串类型。

bin()函数的参数可以是负的整数,但不能是浮点数。看看下面的例子:

>>>x = -123
>>>print(bin(x))
-0b1111011
>>>x = 0
>>>print(bin(x))
0b0
>>>x = -0
>>>print(bin(x))
0b0
>>>x = 12.0
>>>print(bin(x))
Traceback (most recent call last):
  File "<pyshell#12>", line 1, in <module>
    print(bin(x))
TypeError: 'float' object cannot be interpreted as an integer

>>>x = 1.3
>>>print(bin(x))
Traceback (most recent call last):
  File "<pyshell#14>", line 1, in <module>
    print(bin(x))
TypeError: 'float' object cannot be interpreted as an integer

>>>

从上面的例子可以看出,当参数x是浮点数时,将引发TypeError错误。

参数x也可以是其它进制的整型数。

下面的例子演示了二进制十六进制八进制的情况。

>>>x = 0b1001
>>>print(bin(x))
0b1001
>>>x = 0X1F
>>>print(bin(x))
0b11111
>>>x = 0o17
>>>print(bin(x))
0b1111
>>> 

如果类中实现了__index__()函数,则bin()函数的参数x也可以是用户自定义的对象。

下面例子演示了在类内部实现__index__()函数以及未实现__index__()函数的情形。

classStudent:
    id = 0
    def__init__(selfid):
        self.id = id

    def__index__(self):
        returnself.id

classTeacher:
    id = 0
    def__init__(selfid):
        self.id = id

stu = Student(10)
print(bin(stu))

tea = Teacher(11)
print(bin(tea))

输出结果如下:

0b1010
Traceback (most recent call last):
  File "D:/PY/bin.py", line 19, in <module>
    print(bin(tea))
TypeError: 'Teacher' object cannot be interpreted as an integer

从输出结果可知,Student中实现了__index__()函数,使用其对象stu作为bin()函数的参数时可以正确执行,没有产生问题,而Teacher内未实现__index__()函数,则引发了TypeError异常。

以上是关于Python bin()函数的介绍,如有问题欢迎留言评论。


如需转载请注明出处:算搜IT乐园(http://www.suansuo.cn),并给出本文链接地址:

http://www.suansuo.cn/article/python/2021/6534.html

微信搜索“优雅的代码”关注本站的公众号,或直接使用微信扫描下面二维码关注本站公众号,以获取最新内容。

个人成长离不开各位的关注,你的关注就是我继续前行的动力。

知识评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
愿您的精彩评论引起共鸣,带来思考和价值。
用户名:查看更多评论
分 值:100分 90分 80分 70分 60分 40分 20分
内 容:
验证码:
关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图
本站部分内容来自互联网,如有侵权,请来信告之,谢谢!
Copyright © 2007-2021 suansuo.cn. All Rights Reserved.
港股蓝筹股基金,新手该怎么买基金?_伯筠股票网净资产收益率低于行业平均值怎么分析,现在应该买什么股票比较好一点?净资产出资,基金经理葛兰自掏腰包 200 万买自家基金,公司自购 5000 万,如何看待这一操作?通达信平均股价指数代码,MACD高级说明书(1):一文讲透MACD指标的工作原理净投资是指,投资是什么中国银行净资产,中国银行信贷(简版)k线图三角形表示什么意思,三角形是不是角?k线的12种基本形态公式,K线形态有哪些?k线涨停和跌停怎么看,涨停次日,一旦出现这根K线,是砸盘不是洗盘,喜欢追涨的朋友注意了!(值得收藏)伊利股票技术面分析,如何看待 11 月以来伊利股价走势,该公司是否具有长期投资价值?k线教程全集,哪位大神可以帮我分析一下下面的k线图,多谢。?股票k线图入门,股票书籍从入门到精通(小白亲历附带自我解读)k线图里的黄,白线指的是什么,中国股市:热钱大佬教你分辨MACD金叉真假?寻找上升的金叉!币圈k线图教程,币圈韭菜心得(前篇)创业板新股上市什么时候卖出最好?,科创板新股申购后一般过几天正式上市?创业板指是什么意思百度百科,24家北交所和新三板企业简评创业板市场正式启动时间,国内有做空创业板的标的吗?上证指数etf基金代码,除了直接给代码和何时买进卖出,你对基金投资相关视频课程有哪些期待?创业板股票如何交易t 1,创业板注册制股票当天买卖?叶添荣博客,大冢野藏太阳底下 太阳底下的介绍无声胜有声 什么是无声胜有声?基础工程 建筑基础工程包括哪些?意气风发 有哪些意气风发的诗词500什么是a股,当下的A股到底处于什么阶段5月2日 5月2日是什么节日白马股和蓝筹股有什么区别,中国股市:A股16只被低估的一线蓝筹股(名单)股票什么是做空,机构公布报告准备割韭菜,那我可以做空这些股票吗?股票挂涨停板买入是什么意思?,精准的起涨点买入,又是一个涨停板!