Python零基础到入门专栏
】学习的系列文章Python3
的开发环境,后续教程也都是Python3
今天来讲讲Python中的数字类型,包括整数
、浮点数
和 复数
Python 数字数据类型用于存储数值。
数据类型是不允许改变的,这就意味着如果改变数字数据类型的值,将重新分配内存空间。
整型(int)
- 通常被称为是整型或整数,是正或负整数,不带小数点。Python3 整型是没有限制大小的,可以当作 Long 类型使用,所以 Python3 没有 Python2 的 Long 类型。布尔(bool)是整型的子类型。浮点型(float)
- 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 102 = 250)复数( (complex))
- 复数由实数部分和虚数部分构成,可以用a + bj,或者complex(a,b)表示, 复数的实部a和虚部b都是浮点型。整数 就是没有小数部分的数字,Python 中的整数包括正整数、0 和负整数。
整数 代码示例如下:
#将 78 赋值给变量 n
n = 78
print(n)
print( type(n) )
#给x赋值一个很大的整数
x = 8888888888888888888888
print(x)
print( type(x) )
#给y赋值一个很小的整数
y = -7777777777777777777777
print(y)
print( type(y) )
上述代码输出结果:
78 8888888888888888888888 -7777777777777777777777
浮点数 就是我们数学中的小数,例如 12.3、345.0、0.123
书写小数时必须包含一个小数点,否则会被 Python 当作整数处理。
Python中的浮点数有两种写法,分别是:
aEn 或 aen
。a 为尾数部分,是一个十进制数;n 为指数部分,是一个十进制整数;E或e是固定的字符,用于分割尾数部分和指数部分。整个表达式等价于 a×10n。例如: 2.1E5 = 2.1×10^5
,其中 2.1 是尾数,5 是指数。3.7E-2 = 3.7×10^-2
,其中 3.7 是尾数,-2 是指数。0.5E7 = 0.5×10^7
,其中 0.5 是尾数,7 是指数。注意点:只要写成指数形式就是小数,即使它的最终值看起来像一个整数。例如 14E3 等价于 14000,但 14E3 是一个小数。
浮点数 代码示例如下:
f1 = 12.5
print("f1Value: ", f1)
print("f1Type: ", type(f1))
f2 = 0.34557808421257003
print("f2Value: ", f2)
f3 = 0.0000000000000000000000000847
print("f3Value: ", f3)
f4 = 345679745132456787324523453.45006
print("f4Value: ", f4)
f5 = 12e4
print("f5Value: ", f5)
f6 = 12.3 * 0.1
print("f6Value: ", f6)
上述代码输出结果:
f1Value: 12.5 f1Type: f2Value: 0.34557808421257 f3Value: 8.47e-26 f4Value: 3.456797451324568e+26 f5Value: 120000.0 f6Value: 1.2300000000000002
注意点:
12.3*0.1
的计算结果很明显是 1.23,但是 print 的输出却不精确 这是因为小数在内存中是以二进制形式存储的,小数点后面的部分在转换成二进制时很有可能是一串无限循环的数字,无论如何都不能精确表示,所以小数的计算结果一般都是不精确的。
Python支持复数,复数由实数部分和虚数部分构成,复数(Complex)是 Python 的内置类型,直接书写即可。
换句话说,Python 语言本身就支持复数,而不依赖于标准库或者第三方库。
复数由实部(real)和虚部(imag)构成,在 Python 中,复数的虚部以j或者J作为后缀,具体格式为:
a + bj
a 表示实部,b 表示虚部。
复数 代码示例如下:
c1 = 12 + 0.2j
print("c1Value: ", c1)
print("c1Type", type(c1))
c2 = 6 - 1.2j
print("c2Value: ", c2)
#对复数进行简单计算
print("c1+c2: ", c1+c2)
print("c1*c2: ", c1*c2)
上述代码输出结果:
c1Value: (12+0.2j) c1Type c2Value: (6-1.2j) c1+c2: (18-1j) c1*c2: (72.24-13.2j)
Python中的数据类型间的转换示例如下:
将浮点数变量 a 转换为整数示例:
>>> a = 2.3
>>> int(a)
2
下面来举例几种Python中常用的函数,表格样例来自 菜鸟教程 整理,在次感谢~
举例几种Python中最常用的 数学函数,方便我们后面遇到相关计算的时候可以直接使用!
函数 | 返回值 ( 描述 ) |
---|---|
abs(x) | 返回数字的绝对值,如abs(-10) 返回 10 |
ceil(x) | 返回数字的上入整数,如math.ceil(4.1) 返回 5 |
cmp(x, y) | 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1。 Python 3 已废弃,使用 (x>y)-(x |
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的平方根。 |
这里的函数意思可以理解成Python替我们封装好的计算方法,我们省去了自己要重新写一些代码的时间,后面还会有专门介绍,这里简单提一下。
随机数可以用于数学,游戏,安全等领域中,还经常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。
Python包含以下常用随机数函数:
函数 | 描述 |
---|---|
choice(seq) | 从序列的元素中随机挑选一个元素,比如random.choice(range(10)),从0到9中随机挑选一个整数。 |
randrange ([start,] stop [,step]) | 从指定范围内,按指定基数递增的集合中获取一个随机数,基数默认值为 1 |
random() | 随机生成下一个实数,它在[0,1)范围内。 |
seed([x]) | 改变随机数生成器的种子seed。如果你不了解其原理,你不必特别去设定seed,Python会帮你选择seed。 |
shuffle(lst) | 将序列的所有元素随机排序 |
uniform(x, y) | 随机生成下一个实数,它在[x,y]范围内。 |
Python包括以下三角函数:
函数 | 描述 |
---|---|
acos(x) | 返回x的反余弦弧度值。 |
asin(x) | 返回x的反正弦弧度值。 |
atan(x) | 返回x的反正切弧度值。 |
atan2(y, x) | 返回给定的 X 及 Y 坐标值的反正切值。 |
cos(x) | 返回x的弧度的余弦值。 |
hypot(x, y) | 返回欧几里德范数 sqrt(xx + yy)。 |
sin(x) | 返回的x弧度的正弦值。 |
tan(x) | 返回x弧度的正切值。 |
degrees(x) | 将弧度转换为角度,如degrees(math.pi/2) , 返回90.0 |
radians(x) | 将角度转换为弧度 |
常量 | 描述 |
---|---|
pi | 数学常量 pi(圆周率,一般以π来表示) |
e | 数学常量 e,e即自然常数(自然常数) |
数字(Number)
做了一个系统的描述,结合实例讲解