python内置数据类型中数字类型有几种?

Admin 2021-10-14 群英技术资讯 633 次浏览

    本文主要给大家介绍python内置数据类型中数字的相关内容,对新手学习python数据类型有一定的帮助,有需要的朋友可以参考。那么python内置数据类型中数字类型有哪些呢?接下来我们详细了解看看。

    Python的内置数据类型中的数字

    1、变量

    说数据类型之前,我们要先思考一下下面几个问题:

    • 数据是怎么存的呢?
    • 数据类型有啥作用呢?
    • 各种数据类型有啥区别呢?

    要想回答这些问题,首先还是要先了解一下变量的概念。那么何为变量呢?
    变量Variable)可以看成是一个存放数据的盒子,每个变量都有一个指定的名字,通过变量名就可以找到变量中存放的数据。从底层的逻辑来看,变量就是在电脑内存中开辟一个区域,然后被存放的数据放在该区域中。
    与变量相对应的是常量(Constant),他们都是用来存放数据的,不同的是常量一旦保存数据之后就不能修改了,而变量保存的数据可以被多次修改。

    编程语言中,将数据放入变量的过程叫做赋值(Assignment),Python中使用等号=作为赋值运算符,变量是标识符的一种,所以变量的命名也是需要遵守Python标识符的命名规范。

    name=value

    这里的name就是变量名,而value就是要到变量中的数据。一个变量只能容纳一个值,当一个变量被赋值之后,再次赋值的话就会覆盖掉原来的值。

    举个栗子:

    a=100

    就是将数字100赋值给变量a。
    解释了变量的概念之后,就解决了第一问题,那就是数据是通过变量存在内存中的,当然也可以将数据持久化到硬盘中。

    2、数据类型总览

    理清楚变量的概念之后,接下来总体介绍一下Python中各种内置的数据类型,如下图思维导图显示的,数据类型有很多,本文将主要介绍属于数字的几个数据类型。其余的数据类型在后续的文章中会介绍到。

    3、

    3、Python是弱类型的语言

    不同于其他强类型的编程语言(比如Java,C语言等),Python是弱类型的语言,其主要体现在

    定义变量的时候不需要强制指定变量的数据类型。变量无须声明就可以直接赋值,对一个不存在的变量赋值就相当于定义一个新变量。
    变量的数据类型可以随时改变,比如,同一个变量可以一会被赋值为整数,一会被赋值为字符串。
    依然是举栗说明:比如定义一个变量a,并将100赋值给它,Java中的写法是

    int a=100

    Python中的写法是:

    a=100

    可以看出Java中必须声明变量a的数据类型int,声明之后就只能向变量a中赋值整数,而不能赋值字符串等其他类型的数据。而Python则没有这些限制。
    弱数据类型并不等于没有数据类型,这是在书写的时候不用刻意声明数据类型,但是在编程语言的内部还是有数据类型的,可以通过type() 方法进行查看其数据类型。

    >>> type(100)
    <class 'int'>
    >>> type(100.1)
    <class 'float'>
    >>> type(True)
    <class 'bool'>
    >>> type(2+10j)
    <class 'complex'>

    4、各数据类型的详细介绍

    4.1 整数(int)

    Python3中的整数是不分类型,也就是说没有长整数类型(Long)或者短整数类型(short)之分,它的取值范围是是无限的,即不管多大或者多小的数字,Python都能轻松的应对。如下就是两个极大或者极小的整数。

    >>> 100000-0000000000000000000000000000000000000000
    1000000000000000000000000000000000000000000000
    >>> print(-1000000000000000000000000000000000000000000000)
    -1000000000000000000000000000000000000000000000

    可以看出再大或者再小的数字都不会出现溢出的情况,这说明了Python对整数的处理能力非常强。

    4.1.1 整数的不同进制

    Python中可以用多种进制的来表示整数。

    (1)十进制形式
    我们平时常见的整数就是十进制形式,它由 0~9 共十个数字排列组合而成。
    注意,使用十进制形式的整数不能以 0 作为开头,除非这个数值本身就是 0。
    (2)二进制形式
    由 0 和 1 两个数字组成,书写时以0b或0B开头。例如,1001对应十进制数是 9。
    (3)八进制形式
    八进制整数由 0~7 共八个数字组成,以0o或0O开头。注意,第一个符号是数字 0,第二个符号是大写或小写的字母 O。
    (4)十六进制形式
    由 0~9 十个数字以及 A~F(或 a~f)六个字母组成,书写时以0x或0X开头。

    # 二进制
    a=0b1001
    print('a=',a)
    # 八进制
    b=0o207
    print('b=',b)
    # 十六进制
    c=0x45
    print('c=',c)

    运行结果是:

    a= 9
    b= 135
    c= 69

    Python 3.x允许使用下划线_作为数字(包括整数和小数)的分隔符,通常每隔三个数字添加一个下划线,比如:click = 1_301_547

    4.2 浮点数/小数(float)

    在编程语言中,小数通常以浮点数的形式存储,浮点数和定点数是相对的;小数在存储过程中如果小数点发生移动,就称为浮点数;如果小数点不动,就称为定点数。

    4.2.1 小数的书写形式

    Python中的小数有两种书写形式:

    (1)十进制形式
    这就是我们经常看到的小数形式,比如101.1;234.5;0.23

    (2)指数形式
    Python小数点指数形式的写法为:aEn或aen
    a为尾数部分,是一个十进制,n为指数部分,是一个十进制,E或者e是固定的字符,用于分割尾数部分和指数部分,真的表达式是 a×10n。
    举个栗子:
    2.3E5=2.3x10的5次方

    依然还举个栗子:

    x=10.01
    print('x=',x)
    y=-0.031
    print('y=',y)
    z=2.3E10
    print('z=',z)
    w=-0.00000001
    print('w=',w)

    运行结果是:

    x= 10.01
    y= -0.031
    z= 23000000000.0
    w= -1e-08
    
    

    5、复数(complex)

    复数(complex)是由实部(real)和虚部(imag)构成,在Python中,复数的虚部以j或者J作为后缀,具体格式是:

    a+bj

    其中a表示实部,b表示虚部

    c1=100+2j
    print("c1的值是:",c1)
    c2=200+3J
    print('C2的值是:',c2)
    
    

    运行结果是:

    c1的值是 (100+2j)
    C2的值是 (200+3j)
    
    

    6、布尔类型(bool)

    布尔类型用来表示真(对)或假(错),比如常见的3>2 比较算式,这个是正确的,Python中使用True来代表;再比如2>3 比较算式,这个是错误的,用False来代表。

    print(3>2)
    print(2>3)
    print('True==1的结果是:',True==1)
    print('False==0的结果是:',False==0)
    
    

    运行结果是:

    True
    False
    True==1的结果是: True
    False==0的结果是: True
    
    

    从上述代码可以看出,bool类型的True值对应整数值1,而False值对应整数值0。

        关于python内置数据类型中数字类型的内容就介绍到这,上述示例具有一定的借鉴价值,希望能对大家有帮助,想要了解更多python内置数据类型的内容,大家可以关注其它的相关文章。

    文本转载自脚本之家

    群英智防CDN,智能加速解决方案

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

    猜你喜欢

    成为群英会员,开启智能安全云计算之旅

    立即注册
    专业资深工程师驻守
    7X24小时快速响应
    一站式无忧技术支持
    免费备案服务
    免费拨打  400-678-4567
    免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
    在线客服
    微信公众号
    返回顶部
    返回顶部 返回顶部
    在线客服
    在线客服