python基本数据类型——int
一、int的范围
python2:
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1;
python3:
理论上长度是无限的(只要内存足够大)
二、python内存机制
在一般情况下当变量被赋值后,内存和变量的关系如下:
特殊情况:
python内的优化机制(不论是2.7还是3.5都有):
-5 ~ 257 之间的数,如果使用第一种赋值方式,那么他们依然属于同一块内存(可以用id查看)
三、源码
- class int(object):
- """
- int(x=0) -> int or long
- int(x, base=10) -> int or long
- Convert a number or string to an integer, or return 0 if no arguments
- are given. If x is floating point, the conversion truncates towards zero.
- If x is outside the integer range, the function returns a long instead.
- If x is not a number or if base is given, then x must be a string or
- Unicode object representing an integer literal in the given base. The
- literal can be preceded by '+' or '-' and be surrounded by whitespace.
- The base defaults to 10. Valid bases are 0 and 2-36. Base 0 means to
- interpret the base from the string as an integer literal.
- >>> int('0b100', base=0)
- """
- def bit_length(self):
- """ 返回表示该数字的时占用的最少位数 """
- """
- int.bit_length() -> int
- Number of bits necessary to represent self in binary.
- >>> bin(37)
- '0b100101'
- >>> (37).bit_length()
- """
- return 0
- def conjugate(self, *args, **kwargs): # real signature unknown
- """ 返回该复数的共轭复数 """
- """ Returns self, the complex conjugate of any int. """
- pass
- def __abs__(self):
- """ 返回绝对值 """
- """ x.__abs__() <==> abs(x) """
- pass
- def __add__(self, y):
- """ x.__add__(y) <==> x+y """
- pass
- def __and__(self, y):
- """ x.__and__(y) <==> x&y """
- pass
- def __cmp__(self, y):
- """ 比较两个数大小 """
- """ x.__cmp__(y) <==> cmp(x,y) """
- pass
- def __coerce__(self, y):
- """ 强制生成一个元组 """
- """ x.__coerce__(y) <==> coerce(x, y) """
- pass
- def __divmod__(self, y):
- """ 相除,得到商和余数组成的元组 """
- """ x.__divmod__(y) <==> divmod(x, y) """
- pass
- def __div__(self, y):
- """ x.__div__(y) <==> x/y """
- pass
- def __float__(self):
- """ 转换为浮点类型 """
- """ x.__float__() <==> float(x) """
- pass
- def __floordiv__(self, y):
- """ x.__floordiv__(y) <==> x//y """
- pass
- def __format__(self, *args, **kwargs): # real signature unknown
- pass
- def __getattribute__(self, name):
- """ x.__getattribute__('name') <==> x.name """
- pass
- def __getnewargs__(self, *args, **kwargs): # real signature unknown
- """ 内部调用 __new__方法或创建对象时传入参数使用 """
- pass
- def __hash__(self):
- """如果对象object为哈希表类型,返回对象object的哈希值。哈希值为整数。在字典查找中,哈希值用于快速比较字典的键。两个数值如果相等,则哈希值也相等。"""
- """ x.__hash__() <==> hash(x) """
- pass
- def __hex__(self):
- """ 返回当前数的 十六进制 表示 """
- """ x.__hex__() <==> hex(x) """
- pass
- def __index__(self):
- """ 用于切片,数字无意义 """
- """ x[y:z] <==> x[y.__index__():z.__index__()] """
- pass
- def __init__(self, x, base=10): # known special case of int.__init__
- """ 构造方法,执行 x = 123 或 x = int(10) 时,自动调用,暂时忽略 """
- """
- int(x=0) -> int or long
- int(x, base=10) -> int or long
- Convert a number or string to an integer, or return 0 if no arguments
- are given. If x is floating point, the conversion truncates towards zero.
- If x is outside the integer range, the function returns a long instead.
- If x is not a number or if base is given, then x must be a string or
- Unicode object representing an integer literal in the given base. The
- literal can be preceded by '+' or '-' and be surrounded by whitespace.
- The base defaults to 10. Valid bases are 0 and 2-36. Base 0 means to
- interpret the base from the string as an integer literal.
- >>> int('0b100', base=0)
- # (copied from class doc)
- """
- pass
- def __int__(self):
- """ 转换为整数 """
- """ x.__int__() <==> int(x) """
- pass
- def __invert__(self):
- """ x.__invert__() <==> ~x """
- pass
- def __long__(self):
- """ 转换为长整数 """
- """ x.__long__() <==> long(x) """
- pass
- def __lshift__(self, y):
- """ x.__lshift__(y) <==> x<<y """
- pass
- def __mod__(self, y):
- """ x.__mod__(y) <==> x%y """
- pass
- def __mul__(self, y):
- """ x.__mul__(y) <==> x*y """
- pass
- def __neg__(self):
- """ x.__neg__() <==> -x """
- pass
- @staticmethod # known case of __new__
- def __new__(S, *more):
- """ T.__new__(S, ...) -> a new object with type S, a subtype of T """
- pass
- def __nonzero__(self):
- """ x.__nonzero__() <==> x != 0 """
- pass
- def __oct__(self):
- """ 返回改值的 八进制 表示 """
- """ x.__oct__() <==> oct(x) """
- pass
- def __or__(self, y):
- """ x.__or__(y) <==> x|y """
- pass
- def __pos__(self):
- """ x.__pos__() <==> +x """
- pass
- def __pow__(self, y, z=None):
- """ 幂,次方 """
- """ x.__pow__(y[, z]) <==> pow(x, y[, z]) """
- pass
- def __radd__(self, y):
- """ x.__radd__(y) <==> y+x """
- pass
- def __rand__(self, y):
- """ x.__rand__(y) <==> y&x """
- pass
- def __rdivmod__(self, y):
- """ x.__rdivmod__(y) <==> divmod(y, x) """
- pass
- def __rdiv__(self, y):
- """ x.__rdiv__(y) <==> y/x """
- pass
- def __repr__(self):
- """转化为解释器可读取的形式 """
- """ x.__repr__() <==> repr(x) """
- pass
- def __str__(self):
- """转换为人阅读的形式,如果没有适于人阅读的解释形式的话,则返回解释器课阅读的形式"""
- """ x.__str__() <==> str(x) """
- pass
- def __rfloordiv__(self, y):
- """ x.__rfloordiv__(y) <==> y//x """
- pass
- def __rlshift__(self, y):
- """ x.__rlshift__(y) <==> y<<x """
- pass
- def __rmod__(self, y):
- """ x.__rmod__(y) <==> y%x """
- pass
- def __rmul__(self, y):
- """ x.__rmul__(y) <==> y*x """
- pass
- def __ror__(self, y):
- """ x.__ror__(y) <==> y|x """
- pass
- def __rpow__(self, x, z=None):
- """ y.__rpow__(x[, z]) <==> pow(x, y[, z]) """
- pass
- def __rrshift__(self, y):
- """ x.__rrshift__(y) <==> y>>x """
- pass
- def __rshift__(self, y):
- """ x.__rshift__(y) <==> x>>y """
- pass
- def __rsub__(self, y):
- """ x.__rsub__(y) <==> y-x """
- pass
- def __rtruediv__(self, y):
- """ x.__rtruediv__(y) <==> y/x """
- pass
- def __rxor__(self, y):
- """ x.__rxor__(y) <==> y^x """
- pass
- def __sub__(self, y):
- """ x.__sub__(y) <==> x-y """
- pass
- def __truediv__(self, y):
- """ x.__truediv__(y) <==> x/y """
- pass
- def __trunc__(self, *args, **kwargs):
- """ 返回数值被截取为整形的值,在整形中无意义 """
- pass
- def __xor__(self, y):
- """ x.__xor__(y) <==> x^y """
- pass
- denominator = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """ 分母 = 1 """
- """the denominator of a rational number in lowest terms"""
- imag = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """ 虚数,无意义 """
- """the imaginary part of a complex number"""
- numerator = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """ 分子 = 数字大小 """
- """the numerator of a rational number in lowest terms"""
- real = property(lambda self: object(), lambda self, v: None, lambda self: None) # default
- """ 实属,无意义 """
- """the real part of a complex number"""
- int
int
小知识点:
在python2中:
- test = 9 / 2
- 输出—— 4
- from __future__ import division
- test = 9 / 2
- 输出—— 4.5
而在python3中:
- test = 9 / 2
- 输出—— 4.5
python基本数据类型——int的更多相关文章
- python基本数据类型,int,bool,str
一丶python基本数据类型 1.int 整数,主要用来进行数学运算. 2.str 字符串,可以保存少量数据并进行相应的操作 3.bool 判断真假.True.False 4.list 存储大量数据, ...
- 二: python基础数据类型(int,
一.什么是数据类型?2018-12-20 20:57:3õ # (3) num = 0 while num < 10: num += 1 if num == 7: num += 1 # 7执 ...
- python基础数据类型—int、bool、字符串的常用方法
1.int int为整型数据,主要用于计算和类型转化(将字符串转为数字) 常用方法 #bit_length()当用二进制表示数字时所用最少位数,如下十进制数12用二进制表示是1100(bin),所以# ...
- Python基础数据类型int
整型int 赋值运算符 a=1 a+=1 #a=a+1 a-=1 #a=a-1 a*=1 #a=a*1 a/=1 #a=a/1 a**=1 #a=a**1 a%=1 #a=a%1 算数运算符 + - ...
- 2018-7-30 python基本数据类型
python基本数据类型 int 整数 str 字符串. 一般不存放大量的数据 bool 布尔值. 用来判断. True, False list 列表.用来存放大量数 ...
- python学习第四天基本数据类型 int,string,bool
python跟其他编程语言一样,拥有基本的数据类型,计算机 只能识别0101,python是解释语言,有其他的解释器 python整型 int a=10 type(a) "int| pyth ...
- Python学习笔记之基础篇(三)python 数据类型 int str bool 详谈
python 的数据类型: 1.int:存放 1,2,3 等数据 ,用于数字的运算 2.bool :True, False 用于判断 3.str:字符串,用来存储少量的数据 4.list : 数组的 ...
- python基础与数据类型(int, float, str, list)
目录 python多版本共存 在cmd窗口进入不同版本的python环境 在pycharm中切换不同的版本 python语法之注释 python变量与常量 变量 变量的本质 变量的命名规范 常量 py ...
- python 基本数据类型分析
在python中,一切都是对象!对象由类创建而来,对象所拥有的功能都来自于类.在本节中,我们了解一下python基本数据类型对象具有哪些功能,我们平常是怎么使用的. 对于python,一切事物都是对象 ...
随机推荐
- 1297: [SCOI2009]迷路
1297: [SCOI2009]迷路 Time Limit: 10 Sec Memory Limit: 162 MBSubmit: 652 Solved: 442[Submit][Status] ...
- PHP-配置方法
由于php是一个zip文件(非install版),安装较为简单,解压就行.把解压的 php5.2.1-Win32重命名为 php5.并复制到C盘目录下.即安装路径为 c:\php5 1 找到php目录 ...
- HttpServletResponse对象介绍
一.HttpServletResponse对象介绍
- HttpURLConnection实现两个服务端的对接
在企业开发中,很多时候需要用到两个服务端的对接,在java类中进行连接并传递参数,其中的HttpURLConnection是一种轻量化,并且简单的方法! package httptest; impor ...
- STL部分的实现
C++的STL很强大,里面实现很多功能 就平时经常会用到的vector之类的,自己实现一下, 有哪块错误的希望大神给予指点 vector类模板 template<typename T>cl ...
- 一个想法照进现实-《IT连》创业项目:关于团队组建
前言: 从上一篇<三天的风投对接活动内幕分享>归来后,从中领悟了不少内涵. 之后暂停了找钱的想法,这些天也拒绝了不少想要参与众筹的同学. 目前主要精力放在以下三件事: 1:重新规划顶层设计 ...
- 【一】Swift 3.0 新浪微博项目实战 -整体框架搭建
最近要接手swift,所以找了个视频跟着做一下实战项目,在此记录一下过程和心得 框架搭建和目录拆分 关键词:MVVM 架构,桥接文件 桥接文件用于引入OC的头文件,Swift就可以正常使用(宏除外). ...
- windows 下编译php扩展库pecl里的扩展memcache
Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像.视频.文件以及数据库检索的结果等.简单的说就是将数据调用到内 ...
- JDBC与ArrayList和hashmao
JDBC帮助类 package work; import java.beans.Statement;import java.sql.Connection;import java.sql.DriverM ...
- 一个关于Python正则表达式的快速使用手册
一直在纠结自己的博客到底应该写一些什么东西,这几天发现自己的正则用的不是很熟练,于是想要写一篇关于正则表达式的博客,目的就是为了让自己以后要用而又不会的时候不至于像无头苍蝇一样到处乱撞. 有些人在碰到 ...