资讯专栏INFORMATION COLUMN

python数据类型——数字

Jingbin_ / 586人阅读

摘要:例如返回的结果并不是,而是幂指数取余赋值给变量使用函数来查看变量类型整型数字的最大最小值在位系统中,一个整型个字节,最小值,最大值。事实上,中储存的值为,因为这是最接近的浮点数。

整型 Integers

整型运算,加减乘:

2 + 2
4



3 - 4
-1



4 * 5
20


Python 2.7中,整型的运算结果只能返回整型,除法的结果也不例外。

例如12 / 5返回的结果并不是2.4,而是2:

12 / 5
2


幂指数:

2 ** 5
32


取余:

32 % 5
2


赋值给变量:

a = 1
a
1


使用type()函数来查看变量类型:

type(a)
int


整型数字的最大最小值:

在 32 位系统中,一个整型 4 个字节,最小值 -2,147,483,648,最大值 2,147,483,647

在 64 位系统中,一个整型 8 个字节,最小值 -9,223,372,036,854,775,808,最大值 9,223,372,036,854,775,807

import sys
sys.maxint
2147483647
长整型 Long Integers

当整型超出范围时,Python会自动将整型转化为长整型,不过长整型计算速度会比整型慢。

a = sys.maxint + 1
print type(a)


长整型的一个标志是后面以字母L结尾:

a
2147483648L


可以在赋值时强制让类型为长整型:

b = 1234L
type(b)
long


长整型可以与整型在一起进行计算,返回的类型还是长整型:

a - 4
2147483644L


浮点数 Floating Point Numbers
a = 1.4
type(a)
float


在之前的除法例子12 / 5中,假如想要使返回的结果为2.4,可以将它们写成浮点数的形式:

12.0 / 5.0
2.4



12 / 5.0
2.4



12.0 / 5
2.4


上面的例子说明,浮点数与整数进行运算时,返回的仍然是浮点数:

5 + 2.4
7.4


浮点数也可以进行与整数相似的运算,甚至可以取余:

3.4 - 3.2
0.19999999999999973



12.3 + 32.4
44.7



2.5 ** 2
6.25



3.4 % 2.1
1.2999999999999998


Python的浮点数标准与CJava一致,都是IEEE 754 floating point standard。

注意看 3.4 - 3.2 的结果并不是我们预期的0.2,这是因为浮点数本身储存方式引起的,浮点数本身会存在一点误差。

事实上,Python 中储存的值为"0.199999999999999733546474089962430298328399658203125",因为这是最接近0.2的浮点数。|

"{:.52}".format(3.4 - 3.2)
"0.199999999999999733546474089962430298328399658203125"


当我们使用print显示时,Python会自动校正这个结果

print 3.4 - 3.2
0.2

可以用sys.float_info来查看浮点数的信息:

import sys
sys.float_info
sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)


例如浮点数能表示的最大值:

sys.float_info.max
1.7976931348623157e+308


浮点数能表示的最接近0的值:

sys.float_info.min
2.2250738585072014e-308


浮点数的精度:

sys.float_info.epsilon
2.220446049250313e-16


复数 Complex Numbers

Python 使用 j 来表示复数的虚部:

a = 1 + 2j
type(a)
complex


可以查看它的实部,虚部以及共轭:

a.real
1.0



a.imag
2.0



a.conjugate()
(1-2j)


交互计算

可以将复杂的表达式放在一起计算:

1 + 2 - (3 * 4 / 6) ** 5 + 7 % 5
-27


Python中运算是有优先级的,优先级即算术的先后顺序,比如“先乘除后加减”和“先算括号里面的”都是两种优先级的规则,优先级从高到低排列如下:

( ) 括号

** 幂指数运算

* / // % 乘,除,整数除法,取余运算

"+ -" 加减

整数除法,返回的是比结果小的最大整数值:

12.3 // 5.2
2.0



12.3 // -4
-4.0


简单的数学函数

绝对值:

abs(-12.4)
12.4


取整:

round(21.6)
22.0


最大最小值:

print min(2, 3, 4, 5)
print max(2, 4, 3)
2
4

变量名覆盖

不要用内置的函数来命名变量,否则会出现意想不到的结果:

type(max)
builtin_function_or_method


不要这样做!!!

max = 1
type(max)
int



max(4, 5)
---------------------------------------------------------------------------

TypeError                                 Traceback (most recent call last)

 in ()
----> 1 max(4, 5)


TypeError: "int" object is not callable

类型转换

浮点数转整型,只保留整数部分:

print int(12.324)
print int(-3.32)
12
-3

整型转浮点型:

print float(1.2)
1.2

其他表示

除了10进制外,整数还有其他类型的表示方法。

科学计数法:

1e-6
1e-06


16进制,前面加0x修饰,后面使用数字0-9A-F:

0xFF
255


8进制,前面加0或者0o修饰,后面使用数字0-7:

067
55


2进制,前面加0b修饰,后面使用数字0或1:

0b101010
42


原地计算 In-place

Python可以使用下面的形式进行原地计算:

b = 2.5
b += 2
print b
b *= 2
print b
b -= 3
print b
4.5
9.0
6.0

布尔型 Boolean Data Type

布尔型可以看成特殊的二值变量,其取值为TrueFalse

q = True
type(q)
bool


可以用表达式构建布尔型变量:

q = 1 > 2
print q
False

常用的比较符号包括:

<, >, <=, >=, ==, !=

Python支持链式比较:

x = 2 
1 < x <= 3
True
本人对于Python学习创建了一个小小的学习圈子,为各位提供了一个平台,大家一起来讨论学习Python。欢迎各位到来Python学习群:923414804一起讨论视频分享学习。Python是未来的发展方向,正在挑战我们的分析能力及对世界的认知方式,因此,我们与时俱进,迎接变化,并不断的成长,掌握Python核心技术,才是掌握真正的价值所在。

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/43013.html

相关文章

  • Python 基础篇 - Python入门

    摘要:除此之外的特定形式还有二进制序列类型,那么我们在这里所说的序列主要包含以下三种列表列表是一种可变序列,一般形式为,方括号内的各项间用逗号分隔。 引言 对于以前没有接触过任何编程语言的人来说,首先能明确编程的目的很重要,往往能明确一个目的,在日后的学习中遇到困难时心态就会轻松许多。当今计算机文化的多元化发展,涌现出了大数据、分布式计算、神经网络、机器学习等众多新概念,即便这样,任何意义上...

    VioletJack 评论0 收藏0
  • Python全栈之路系列之数字数据类型

    摘要:数字在中,整型长整型浮点数负数布尔值等都可以称之为数字类型。数字类型的复杂度整数比浮点数简单浮点数比复数简单。布尔类型布尔类型其实就是数字和的变种而来,即真或假,实际上就是内置的数字类型的子类而已。 上篇文章中我们简单的体验了Python语言基本概念与语法,那么在继续深入下去的过程中,不妨先学习几个常见的Python内置数据类型?这也是大部分Python教科书的学习目录,由浅至深,慢慢...

    Developer 评论0 收藏0
  • Python-数据类型总结

    摘要:如果有一个值为真,立刻返回该值如果所有的值都为假,返回最后一个假值注意在布尔上下文中会一直进行表达式演算直到找到第一个真值,然后就会忽略剩余的比较值结合使用结合了前面的两种语法,推理即可。 一、介绍 按存储空间的占用分(从低到高):数字字符串集合:无序,即无序存索引相关信息元组:有序,需要存索引相关信息,不可变列表:有序,需要存索引相关信息,可变,需要处理数据的增删改字典:无序,需要存...

    Miracle 评论0 收藏0
  • Python3中六种标准数据类型的简单说明和理解

    摘要:作者心叶时间中的变量不需要声明。中有六个标准的数据类型数字字符串列表元组集合字典。字符串格式化我叫今年岁心叶我叫心叶今年岁如上所示,字符串支持格式化,当然,出来上面用到的和以外,还有一些别的,具体看文档是不是感觉有点语言的味道。 作者:心叶时间:2018-04-21 09:28 Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。 Python3...

    Cheng_Gang 评论0 收藏0
  • Python3中六种标准数据类型的简单说明和理解

    摘要:作者心叶时间中的变量不需要声明。中有六个标准的数据类型数字字符串列表元组集合字典。字符串格式化我叫今年岁心叶我叫心叶今年岁如上所示,字符串支持格式化,当然,出来上面用到的和以外,还有一些别的,具体看文档是不是感觉有点语言的味道。 作者:心叶时间:2018-04-21 09:28 Python 中的变量不需要声明。每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。 Python3...

    rockswang 评论0 收藏0
  • Python入门-第一章Python基础(2)

    摘要:例如使用表示年龄,使用表示年份等。如下图所例以存储数据的变量标识符为和存储数据的变量标识符为为例,表示变量与内存单元之间的关系。用于设定分隔符,默认使用空格作为分隔。 1.2    标识符和关键字 1.2.1     标识符 在日常生活中我们为了方便我们在行为、语言等方面进行沟通与交流,我们...

    freewolf 评论0 收藏0

发表评论

0条评论

Jingbin_

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<