Python 入门笔记(三)数字(Number)
三种数
Python 支持三种不同的数值类型:
-
整型(
int
) : 通常被称为是整型或整数,是正或负整数,不带小数点 -
浮点型(
float
) : 浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示2.5e2
-
复数(
complex
) : 复数由实数部分和虚数部分构成,可以用a + bj
(注意是j
),或者complex(a,b)
表示,a
和b
都将以浮点型存储
相互转换
int(x)
将x
转换为一个整数。float(x)
将x
转换到一个浮点数。complex(x)
将x
转换到一个复数,实数部分为x
,虚数部分为0
complex(x, y)
将x
和y
转换到一个复数,实数部分为x
,虚数部分为y
PS:
Python3
中的数字是没有限制大小的!Python3
中没有Python2
的long
类型,整型简化成只剩一个int
类型布尔(bool)
是int
的子类型
数中的下划线
在 Python3.6+
中书写很大的数时,可以在任意位置加入下划线,使数字更清晰易读
1 | universe_age= 14_000_000_000 |
当然,Python 并不会把下划线也存进去
1 | print(universe_age) |
这种方法对整数和浮点数都适用
七种运算
运算符 | 含义 | 例子 | 运行结果 |
---|---|---|---|
+ | 加 | 3+1 | 4 |
- | 减 | 40-2 | 38 |
* | 乘 | 3*2 | 6 |
/ | 除 | 6/3 | 2.0 |
// | 整除 | 3//2 | 1 |
** | 幂 | 2**3 | 8 |
% | 求余 | 7%2 | 1 |
PS,在整数和浮点数的运算中:
- 混合运算的结果总是浮点数
- 任意两个数相除(
/
),结果总是浮点数
简化运算符
这个与 C 中的规则相同
1 | n = n + 1 |
可以简化为
1 | n += 1 |
其他的举一反三
二进制、八进制、十六进制
表示法
Python 中这三个进制的标识方法与 C 中的不完全相同,表示这三个进制的数必须以 0
开头,然后分别跟着不同进制的字母
- 二进制 :
b
,0b110011
- 八进制:
o
,0o56432
- 十六进制:
x
,0xF765A
相互转换
1 | print(0b110011) #输出二进制 |
相关函数
数学函数(from math import *
)
函数名 | 描述 |
---|---|
abs(x) |
绝对值 |
fabs(x) |
浮点数的绝对值 |
ceil(x) |
向上取整 |
floor(x) |
向下取整 |
log(x) |
以 e 为底取对数 |
log(x,y) |
以 y 为底取 x 的对数 |
max/min(x,y,...) |
取最大值/最小值 |
sqrt(x) |
开根号 |
round(x[,n]) |
四舍五入,精度 n 可选 |
sin(x) |
x 的正弦值 |
cos(x) |
x 的余弦值 |
tan(x) |
x 的正切值 |
asin(x) |
x 的反余弦(弧度) |
acos(x) |
x 的反余弦(弧度) |
atan(x) |
x 的反正切(弧度) |
atan2(x,y) |
给定的 x 及 y 坐标值的反正切值 |
hypot(x,y) |
欧几里德范数 sqrt(x*x + y*y) |
degrees(x) |
弧度转角度 |
radians(x) |
角度转弧度 |
随机数函数(from random import *
)
Python 中取随机不需要事先设定种子,当然你也可以手动重新设定
函数名 | 描述 |
---|---|
random() |
在 [0,1) 中取一个随机数 |
choice(seq) |
在 seq 中随机挑选一个元素,seq 可以是列表,元组或字符串,例:choice(range(10)) |
randrange([x,]y[,z]) |
在 [x,y) 内取一个 z 的倍数,x 和 z 默认为 1 |
uniform(x,y) |
在 [x,y] 中随机取一个浮点数 |
shuffle(list) |
随机打乱一个列表 |
seed([x]) |
改变随机数生成器的种子 |
数学常量
常量 | 描述 |
---|---|
pi |
圆周率 π |
e |
欧拉常数 e |
有趣的问题:0.1+0.2≠0.3
初中的时候对Python为数不多的认识之一就是听说在Python里 0.1
加上 0.2
不等于 0.3
(笑)
1 | print(0.1+0.2) |
结果为
1 | 0.30000000000000004 |
评论
GiscusTwikoo