zoukankan      html  css  js  c++  java
  • Python数字类型介绍

    数据类型介绍

    • Python数据类型可分为:数字型和非数字型
    • 数字型
      • 整型(int)
      • 浮点型(float)
      • 布尔型(bool)
        • 真(True)
        • 假(False)
      • 复数型(complex)
        • 主要用于科学计算
    • 非数字型
      • 字符串(str)
      • 列表(list)
      • 元组(tuple)
      • 字典(dict)
    • 在Python中,所有的非数字类型变量,都有一个共同的特点:
      • 都是一个序列,可以理解为容器

    数字类型

      在32位机器上,整数的位数为32位,取值范围为-231~231-1,即-2147483648~2147483647

      在64位系统上,整数的位数为64位,取值范围为-263~263-1,即-9223372036854775808~9223372036854775807

    数字类型的创建

    #!/usr/bin/env python3
    # -*-coding:utf-8-*-
    
    """
    @author:fyh
    @time:2019/5/31
    """
    # int类型创建
    a = 10
    b = 666
    
    print(a)  # 10
    print(b)  # 666
    print(type(a))  # <class 'int'>
    
    # float类型创建
    c = 3.14
    print(c)
    print(type(c))  # <class 'float'>
    
    # complex类型创建
    d = 3 + 4j
    print(d)
    print(type(d))  # <class 'complex'>
    
    # 布尔型
    flag = True
    print(flag)
    print(type(flag))   # <class 'bool'>
    

    type(obj) 函数可以查看变量的类型

    数据类型的转换

    有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。

    • int(x) 将x转换为一个整数
    • float(x) 将x转换到一个浮点数
    • complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0
    • complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式
    • bool(x) 将x转换为bool类型,非0为True,0为False
    #!/usr/bin/env python3
    # -*-coding:utf-8-*-
    
    """
    @author:fyh
    @time:2019/5/31
    """
    
    # int(x)
    var1 = 3.14
    print(int(var1))  # 3
    
    # float(x)
    var2 = 3
    print(float(var2))  # 3.0
    
    # complex(x)
    var3 = 4
    var4 = 2
    print(complex(var3))    # (4+0j)
    # complex(x, y)
    print(complex(var3, var4))  # (4+2j)
    
    # bool(x)
    var5 = 1
    print(bool(var5))   # True
    var6 = 0
    print(bool(var6))   # False
    

    数字类型转换时,x只能是数字类型相互转换,若是其它的类型会报错:

    str1 = "a"
    print(int(str1))  # 会报错
    

    数学运算

    #!/usr/bin/env python3
    # -*-coding:utf-8-*-
    
    """
    @author:fyh
    @time:2019/5/31
    """
    
    print(2 + 2)    # 4
    
    print(50 - 5*5)     # 25
    
    print(8 / 5)    # 1.6
    # 在整数除法中,除法 / 总是返回一个浮点数,如果只想得到整数的结果,丢弃可能的分数部分,可以使用运算符 //
    print(17 / 3)   # 5.666666666666667
    
    print(17 // 3)  # 5
    
    # 注意:// 得到的并不一定是整数类型的数,它与分母分子的数据类型有关系。
    print(7.0 // 2)     # 3.0
    print(7 // 2.0)     # 3.0
    
    # %操作符返回除法的余数
    print(17 % 3)   # 2
    
    # Python 可以使用 ** 操作来进行幂运算
    print(5 ** 2)   # 25
    print(2 ** 7)   # 128
    

    数字类型相关的函数

    数学相关的函数在math包中

    # abs(x) 返回数字的绝对值,如abs(-10) 返回 10
    # ceil(x) 返回数字的上入整数,如math.ceil(4.1) 返回 5
    # cmp(x, y) 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
    # exp(x) 返回e的x次幂(ex),如math.exp(1) 返回2.718281828459045
    # fabs(x) 返回数字的绝对值,如math.fabs(-10) 返回10.0
    # floor(x) 返回数字的下舍整数,如math.floor(4.9)返回 4
    # log(x) 如math.log(math.e)返回1.0,math.log(100,10)返回2.0
    # log10(x) 返回以10为基数的x的对数,如math.log10(100)返回 2.0
    # max(x1, x2,...) 返回给定参数的最大值,参数可以为序列。
    # min(x1, x2,...) 返回给定参数的最小值,参数可以为序列。
    # modf(x) 返回x的整数部分与小数部分,两部分的数值符号与x相同,整数部分以浮点型表示。
    # pow(x, y) x**y 运算后的值。
    # round(x [,n]) 返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数。
    # sqrt(x) 返回数字x的平方根,数字可以为负数,返回类型为实数,如math.sqrt(4)返回 2.0
    

    小整数对象池

    >>> a = 5
    >>> b = 5
    >>> id(a),id(b)
    (1892969616, 1892969616)
    >>> c = 500
    >>> d = 500
    >>> id(c),id(d)
    (2499230475376, 2499234158160)
    >>>
    

    小整数对象池:CPython中整数-5 到 256,永远存在小整数对象池中,不会释放。

    对象池:缓存的机制。

  • 相关阅读:
    禅道的安装
    项目管理必看的几个网站
    禅道管理中的项目管理--组织进行任务分解
    Redis--Springboot使用
    Mapper.xml--配置map<String, List<String>>输入
    SpringBoot-Dubbo、Zk
    高并发--并发编程的三大辅助类
    笔试-2020年西山居Java笔试题(补上,一直忘记补上了)
    HttpWebRequest.GetRequestStream方法timeout【第3次操作时就超时】的原因及解决办法
    洛谷 P2613 【模板】有理数取余(高精度取余,逆元)
  • 原文地址:https://www.cnblogs.com/fengyuhao/p/11697505.html
Copyright © 2011-2022 走看看