简述python中的数值类型_Python中的数值类型

本文将介绍Python语言的一种基本数据类型:数值类型。

一、 数值类型

Python语言的数值类型有四种,分别是:整型、长整型、浮点型和复数类型。下面我们首先介绍整型数据。

1.整型

Python语言的整型在32位机器上,整型的位宽为32位,取值范围为-231~231-1,即-2147483648~2147483647;在64位系统上,整型的位宽通常为64位,取值范围为-263~263-1,即-9223372036854775808~9223372036854775807。

Python中的整数不仅可以用十进制表示,也可以用八进制和十六进制表示。当用八进制表示整数时,数值前面要加上一个前缀“0”;当用十六进制表示整数时,数字前面要加上前缀0X或0x。例如,我们这里将整数15分别以八进制和十六进制的形式赋给整型变量a和b,然后再以十进制的形式输出它们:

a =

017

b = 0xf

print

'变量a的值的十进制形式为%d' %a

print

'变量b的值的十进制形式为%d' %a

当我们在Spyder light模式下运行该程序时的情况:

关于 print

打印语句的详细用法以后再作介绍。

2.长整型

Python的长整型没有指定位宽,也就是说Python没有限制长整型数值的大小,但是实际上由于机器内存有限,所以我们使用的长整型数值不可能无限大。

在使用过程中,我们如何区分长整型和整型数值呢?通常的做法是在数字尾部加上一个大写字母L或小写字母l以表示该整数是长整型的,例如:

a = 6812347598L

b = 6812347598l

小写字母l和数字1看上去很难区分,所以一般推荐使用大写字母L。

注意:自从Python2.2起,如果发生溢出,Python会自动将整型数据转换为长整型,所以在目前所用的版本中长整型数据后面不加字母L也不会导致严重后果了。

3.浮点型

浮点型用来处理实数,即带有小数的数字。实数有两种表示形式,一种是十进制数形式,它由数字和小数点组成,并且这里的小数点是不可或缺的,如1.23,123.0,0.0等;另一种是指数形式,比如789e3或789E3表示的都是789×103,字母e(或E)之前必须有数字,字母e(或E)之后可以有正负号,表示指数的符号,如果没有则表示正号;此外,指数必须为整数。

4.复数类型

复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。注意,虚数部分的字母j大小写都可以,如4.6+2.1j,4.6+2.1J是等价的。

对于复数类型变量n,我们还可以用n.real来提取其实数部分,用n.imag来提取其虚数部分,用n.conjugate()返回复数n的共轭复数,如下图:

二、算术运算符

对于数值型数据,常见的算术运算有加法、减法、乘法、除法,以及求幂和取模等,这些运算所对应的运算符分别为:

加法运算符:+,例如代数表达式2+3的Python表达式为2 + 3;

减法运算符:-,例如代数表达式2-3的Python表达式为2 - 3;

乘法运算符:*,例如代数表达式2×3的Python表达式为2 * 3;

除法运算符:/和//,例如代数表达式2÷3的Python表达式为2 / 3或2 // 3;

求幂运算符:**,例如代数表达式23的Python表达式为2 ** 3;

取模运算符:%,例如代数表达式2mod3的Python表达式为2 % 3;

从Python2.2开始,除法运算符除了/之外,又引入了另一个除法运算符//,后一种运算符只用于进行整除法。对于除法运算符/,默认时的行为跟Python2.2之前的一样,它视操作数而定,既可以进行整除,也可以进行真除法。如果想让这两个运算符有一个明确的分工,即/只用于真除法,而//仅用于整除法的话,需要作以下声明:

from __future__ import division

下图显示了两种除法运算符在作以上声明前后的区别(由于Spyder默认已导入精确除法,所以改用Python

Console):

如上图所示,在声明之前,对表达式2/3进行计算时,结果为0,这是因为参加运算的两个操作数都是整数,所以运算符/进行的是整除法,但是表达式2.0/3的结果却是0.6666666666666666,这是因为操作数中的2.0是浮点数,所以运算符/进行的是真除法。表达式2//3和2.0//3进行求值时,进行的都是整除法,只不过返回值一个是整型,一个是浮点型而已。当我们用import语句进行相应的声明后,除法运算符/只能用于真除法,所以此时2/3和2.0//3的返回值都是0.6666666666666666。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值