python之数据类型

1、数字

int(整型)

  在32位系统上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
  在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
 
long(长整型)

  Python的长整数没有指定位宽,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。
  自从Python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也不会导致严重后果了。
       

        该图里面使用的是python2.7版本,type(2**16)、type(2**25)都是int整型,但是type(2**32)就自动变为了long长整型

float(浮点型)
 
  浮点数用来处理实数,即带有小数的数字。类似于C语言中的double类型,占8个字节(64位),其中52位表示底,11位表示指数,剩下的一位表示符号。
        1 print(type(0.000523)) 2 print(5.23E-4) 3 print(5.23*10**-4) 
       结果
        complex(复数)

  复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。使用较少
       注:Python中存在小数字池:-5 ~ 257
 
2、布尔值
 
  真或假、 1 或 0
1 a = 0
2 if a :
3     print("true")
4 else:
5     print("flase")

       当a等于0时返回flase,等于1时返回true

 
3、字符串
 
      string
      python中文本总是用unicode进行编码,以str类型表示;
 
4.bytes类型
 
      二进制类型
      python2中string和二进制类型是相同的,python3中将文本(text)和二进制数据做了更清晰的区分。
      文本总是用unicode进行编码,以str类型表示;而二进制数据以bytes类型表示。
 
      在python3中,不能以任何隐式方式将str和bytes类型二者混合使用。不可以将str和bytes类型进行拼接,不能在str中搜索bytes数据(反之亦然),也不能将str作为参数传入需要bytes类型参数       的函数(反之亦然)。
 

      strings可以被编码(encode)成字bytes,bytes也可以解码(decode)成strings:

1 >>> '€20'.encode('utf-8')
2 b'\xe2\x82\xac20'
3 >>> b'\xe2\x82\xac20'.decode('utf-8')
4 '€20'
 
 

猜你喜欢

转载自www.cnblogs.com/dangjf/p/8984002.html