python int对象的方法
1、求绝对值
>>> a = -10
>>> a.__abs__()
10
>>> abs(10)
10
2、加法
>>> a = 1
>>> a.__add__(1)
2
>>> a + 1
2
3、按位与
>>> a = 1
>>> a.__and__(0)
0
>>> a & 0
0
4、求bool值
>>> a = 1
>>> a.__bool__()
True
>>> a != 0
True
5、返回数字的上入整数
>>> int.__ceil__(2)
2
>>> import math
>>> math.ceil(2)
2
6、地板除并取模
>>> a = 10
>>> a.__divmod__(3)
(3, 1)
>>> divmod(10, 3)
(3, 1)
7、是否相等
>>> a = 1
>>> a.__eq__(1)
True
>>> a == 1
True
8、转float类型
>>> a = 1
>>> a.__float__()
1.0
>>> float(a)
1.0
9、数字的下舍整数
>>> int.__floor__(3)
3
>>> import math
>>> math.floor(3)
3
10、地板除
>>> a = 10
>>> a.__floordiv__(3)
3
>>> a // 3
3
11、数据格式化
>>> int.__format__(0, '')
''
>>> int.__format__(0, '')
''
>>> int.__format__(0, '')
''
12、大于等于
>>> a = 1
>>> a.__ge__(0)
True
>>> a >= 0
True
13、获取对象的属性
>>> a = 1
>>> a.__getattribute__('real')
1
>>> getattr(a, 'real')
1
14、__getnewargs__
15、大于
>>> a = 1
>>> a.__gt__(0)
True
>>> a > 0
True
16、哈希
>>> a = 1
>>> a.__hash__()
1
>>> hash(a)
1
17、__index__
>>> a = 10
>>> a.__index__()
10
>>> a = [1, 2, 3]
>>> a[1]
2
18、转换为int
>>> a = 1.5
>>> a.__int__()
1
>>> int(a)
1
19、取反
>>> ~10
-11
>>> (10).__invert__()
-11
python默认的是有符号表示数,10的二进制 0000 1010,取反之后 1111 0101
取反之后,符号位从0变成了1,成了一个负数,而已1作为符号位开头,计算机会将其识别为补码
因为负数在机器中是以补码表示、补码转换真值的方式为补码的数值位,
也就是除符号位之外的各位取反后加1。
1111 0101除符号位取反后的值为1000 1010,再加1,便得到1000 1011,转换成十进制,便是-11
20、小于等于
>>> a = 1
>>> a.__le__(2)
True
>>> a <= 2
True
21、左移
>>> a = 1
>>> a.__lshift__(1)
2
>>> a <<1
2
22、小于
>>> a = 1
>>> a.__lt__(2)
True
>>> a < 2
True
23、取余
>>> a = 10
>>> a.__mod__(3)
1
>>> a % 3
1
24、乘
>>> a = 1
>>> a.__mul__(2)
2
>>> a * 2
2
25、不等于
>>> a = 1
>>> a.__ne__(2)
True
>>> a != 2
True
26、相反数
>>> a = 1
>>> a.__neg__()
-1
>>> -a
-1
27、按位或
>>> a = 1
>>> a.__or__(2)
3
>>> a | 2
3
28、加+号
>>> +10
10
>>> (10).__pos__()
10
29、x的y次方,取余
>>> a = 2
>>> a.__pow__(2)
4
>>> a.__pow__(2, 3)
1
>>> pow(2, 2)
4
>>> pow(2, 2, 3)
1
30、反向加
>>> a = 1
>>> a.__radd__(1)
2
>>> 1 + a
2
31、反向与
>>> a = 1
>>> a.__and__(2)
0
>>> 2 & a
0
32、反向地板除取模
>>> a = 3
>>> a.__rdivmod__(10)
(3, 1)
>>> divmod(10, 3)
(3, 1)
33、转字符串
>>> a = 1
>>> a.__repr__()
''
>>> repr(a)
''
34、反向地板除
>>> a = 3
>>> a.__rfloordiv__(10)
3
>>> 10 // 3
3
35、反向左移
>>> a = 1
>>> a.__rlshift__(3)
6
>>> 3 << 1
6
36、反向取模
>>> a = 3
>>> a.__rmod__(10)
1
>>> 10 % 3
1
37、反向乘
>>> a = 2
>>> a.__mul__(3)
6
>>> 3 * 2
6
38、反向或
>>> a = 1
>>> a.__ror__(2)
3
>>> 2 | 1
3
39、四舍五入值
>>> round(10)
10
>>> (10).__round__()
10
40、反向成方取模
>>> a = 3
>>> a.__rpow__(2)
8
>>> a.__rpow__(2, 3)
2
>>> pow(2, 3)
8
>>> pow(2, 3, 3)
2
41、反向右移
>>> a = 1
>>> a.__rrshift__(4)
2
>>> 4 >> 1
2
42、反向减法
>>> a = 1
>>> a.__rsub__(3)
2
>>> 3 - 1
2
43、反向真除
>>> a = 4
>>> a.__rtruediv__(3)
0.75
>>> 3 / 4
0.75
44、反向异或
>>> a = 2
>>> a.__xor__(3)
1
>>> 3 ^ 2
1
45、占内存大小,bytes
>>> a = 2
>>> a.__sizeof__()
28
46、转字符串
>>> a = 2
>>> a.__str__()
''
>>> str(2)
''
47、减法
>>> a = 5
>>> a.__sub__(2)
3
>>> 5 - 2
3
48、真除
>>> a = 5
>>> a.__truediv__(2)
2.5
>>> 5 / 2
2.5
49、__trunc__
截取返回自己
50、异或
>>> a = 2
>>> a.__xor__(3)
1
>>> 2 ^ 3
1
51、需要的bit位数
>>> bin(37)
'0b100101'
>>> (37).bit_length()
6
52、conjugate
转成复数,返回自己
53、from_bytes
int.from_bytes(bytes, byteorder, *, signed=False) -> int 默认是无符号类型
>>> int.from_bytes(b'\xb3\x15\x00\x00', 'little')
5555
54、to_bytes
int.to_bytes(length, byteorder, *, signed=False) -> bytes 默认是无符号类型
length:转换的长度
byteorder:'big' or 'little'
signed:符号位
>>> (100).to_bytes(2, 'big', signed=False)
b'\x00d'
>>> (100).to_bytes(2, 'big', signed=True)
b'\x00d'
>>> (-100).to_bytes(2, 'big', signed=False)
Traceback (most recent call last):
File "<console>", line 1, in <module>
OverflowError: can't convert negative int to unsigned
>>> (-100).to_bytes(2, 'big', signed=True)
b'\xff\x9c'
>>> (5555).to_bytes(2, 'big')
b'\x15\xb3'
>>> (5555).to_bytes(2, 'little')
b'\xb3\x15'
>>> (5555).to_bytes(2, 'big')
b'\x15\xb3'
>>> (5555).to_bytes(4, 'big')
b'\x00\x00\x15\xb3'
>>> (5555).to_bytes(4, 'little')
b'\xb3\x15\x00\x00'
55、分子部分
>>> a = 5
>>> a.numerator
5
56、分母部分
>>> a = 5
>>> a.denominator
1
57、复数的实部
>>> a = 5
>>> a.real
5
58、复数的虚部
>>> a = 5
>>> a.imag
0
python int对象的方法的更多相关文章
- Python 文件对象和方法
Python文件对象和方法 1.打开和关闭文件 Python提供了必要的函数和方法进行默认情况下的文件基本操作,我们可以用file对象做大部分文件操作. open()方法 我们必须先用Python内置 ...
- Python datetime对象的方法
- python面对对象编程------4:类基本的特殊方法__str__,__repr__,__hash__,__new__,__bool__,6大比较方法
一:string相关:__str__(),__repr__(),__format__() str方法更面向人类阅读,print()使用的就是str repr方法更面对python,目标是希望生成一个放 ...
- 《python解释器源码剖析》第2章--python中的int对象
2.0 序 在所有的python内建对象中,整数对象是最简单的对象.从对python对象机制的剖析来看,整数对象是一个非常好的切入点.那么下面就开始剖析整数对象的实现机制 2.1 初识PyLongOb ...
- python 类、对象、方法、属性
在python中,一个对象的特征也称为属性(attribute).它所具有的行为也称为方法(method) 结论:对象=属性+方法 在python中,把具有相同属性和方法的对象归为一个类(class) ...
- Python的高级特性8:你真的了解类,对象,实例,方法吗
Python的高级特性1-7系列是本人从Python2过渡3时写下的一些个人见解(不敢说一定对),接下来的系列主要会以类级为主. 类,对象,实例,方法是几个面向对象的几个基本概念,其实我觉得很多人并不 ...
- python中的类,对象,方法,属性等介绍
注:这篇文章写得很好.加底纹的是我自己的理解 python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象...... 我们通过描述属性( ...
- python类、对象、方法、属性之类与对象笔记
python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象...... 我们通过描述属性(特征)和行为来描述一个对象的.比如家里的小狗, ...
- python 面向对象、特殊方法与多范式、对象的属性及与其他语言的差异
1.python 面向对象 文章内容摘自:http://www.cnblogs.com/vamei/archive/2012/06/02/2532018.html 1.__init__() 创建对 ...
随机推荐
- Solidworks工程图如何使用,替换图纸格式模板文件
1 如果你有了图纸模板(SLDDRW文件),比如下面的这个文件,则以后把零件的三维图拖放到里面就可以了.注意,这是最简单,最有效的方法,后面另存为的slddrt文件不好使,所以还不如把模板文件另存为S ...
- linux find 命令查找 复制
find 查找 find . -mtime -2 -a -path './.git*' -prune , -path './Cache' -prune -a -exec cp {} one \; rm ...
- ORACLE 8i 遇到报错:ORA-01631: max # extents (505) reached in table
近期在客户的一个8i生产库上使用statspack.发现alert中有报错: Mon Jun 16 13:17:52 2014 Errors in file /oracle/8.1.7/admin/p ...
- Mac 上VitrualBox安装CentOS6.5 调整root分区的大小
安装centOS的时候由于选择了动态调整磁盘大小.所以分配磁盘空间的时候就没多想,直接用的default的8G,以为不够了自己会调整,没想到是个大坑 发现提示空间不足的时候root仅仅有0k了.... ...
- webdriver.close() quit() 批量kill进程 内存耗尽的解决办法
问题现象: shell窗口卡,换IP的登录窗,不开: 猜测: 内存耗尽 spider_url,py driver = webdriver.PhantomJS( executable_path='/us ...
- android 中的常用组件
gradle gradle 是个啥,一开始我也没弄清,官方解释是: Gradle是一个基于Apache Ant和Apache Maven概念的项目自动化建构工具 那么Apache Ant和Apache ...
- IE9不能直接引用Console
问题: 公司有个项目,功能很简单,读取业务数据,展示在页面上. 一个很简单的问题,却因为目标浏览器是IE9,卡了三天. 前端给的反馈是: 在IE9下,程序一会儿对,一会儿不对--第一次刷不出来,多刷几 ...
- RedisCluster集群搭建
搭建集群方案 安装部署任何一个应用其实都很简单,只要安装步骤一步一步来就行了.下面说一下 Redis 集群搭建规划,由于集群至少需要6个节点(3主3从模式),所以,没有这么多机器给我玩,我本地也起不了 ...
- vue开发:移动端图片上传
因为最近遇到个移动端上传头像的需求,上传到后台的数据是base64位,其中为了提高用户体验,把比较大的图片用canvas进行压缩之后再进行上传.在移动端调用拍照功能时,会发生图片旋转,为了解决这个问题 ...
- POJ - 1236 Network of Schools(有向图的强连通分量)
d.各学校之间有单向的网络,每个学校得到一套软件后,可以通过单向网络向周边的学校传输, 问题1:初始至少需要向多少个学校发放软件,使得网络内所有的学校最终都能得到软件. 问题2:至少需要添加几条传输线 ...