一、数字型变量
序号 | 类型 | 描述 | 实例 |
---|
01 | int | 整型 | 10,-0x69 |
02 | float | 浮点型 | 0.0,-32.3+e18 |
03 | bool | 布尔型 | True,False |
04 | complex | 复数型 | 3.14j,-3e+26J |
Explain:
- 真
True
(非 0 数),假 False
(0) - 不需要指定变量类型,根据等号右值,自动推导存储数据类型
- 复数型主要用于科学计算,比如波动,平面场,电感电容的问题
- 在
Python 2.x
中,整数 根据保存数值的长度还分为 int
(整型)、long
(长整型) - 在
Python 2.x
中,是没有布尔型的,它用 1
表示 True
,用 0
表示 False
- 到
Python 3.x
中,把 True
和 False
定义成关键字,但它们的值还是 1
和 0
,可以和数字相加 - 非数字型变量:列表,元祖,字典,集合,字符串
二、类型转换
序号 | 函数 | 描述 |
---|
01 | int(x) | 将 x 转换为一个整数 |
02 | float(x) | 将 x 转换到一个浮点数 |
03 | complex(x) | 将 x 转换到一个复数,实数部分为 x ,虚数部分为 0 |
04 | complex(x, y) | 将 x 和 y 转换到一个复数,实数部分为 x ,虚数部分为 y |
Explain:
- 在
ipython3
中,使用 type(x)
函数查看 x
的变量类型 - 在
ipython3
中,使用 isinstance(x, Num)
函数判断 x
的变量类型,返回布尔型 isinstance(x, Num)
和 type(x)
的区别在于:
isinstance(x, Num)
会 认为子类是一种父类类型type(x)
不会 认为子类是一种父类类型
>>> class A:
... pass
...
>>> class B(A):
... pass
...
>>> isinstance(A(), A)
True
>>> type(A()) == A
True
>>> isinstance(B(), A)
True
>>> type(B()) == A
False
三、数学函数
序号 | 函数 | 描述 | 实例 |
---|
01 | abs(x) | 返回 x 的 绝对值 | abs(-10) -> 10 |
13 | round(x, n) | 返回 浮点数的 四舍五入值 | round(56.659, 1) -> 56.7 |
09 | max(x1, x2,...) | 返回 给定参数的 最大值 | 参数可以为序列 (列表、元组、字符串) |
10 | min(x1, x2,...) | 返回 给定参数的 最小值 | 参数可以为序列 (列表、元组、字符串) |
03 | cmp(x, y) | x < y -> -1 ,x == y -> 0 ,x > y -> 1 | 已废弃,使用 (x > y) - (x < y) 替换 |
02 | ceil(x) | 返回 x 的 上入整数 | math.ceil(4.1) -> 5 |
04 | exp(x) | 返回 ex 的 值 | math.exp(1) -> 2.718281828459045 |
05 | fabs(x) | 返回 x 的 浮点绝对值 | math.fabs(-10) -> 10.0 |
06 | floor(x) | 返回 x 的 下舍整数 | math.floor(4.9) -> 4 |
07 | log(x) | 返回 x 的 自然对数 | math.log(100, 10) -> 2.0 |
08 | log10(x) | 返回 以 10 为基数的 对数 | math.log10(100) -> 2.0 |
11 | modf(x) | 返回 x 的 小数部分与整数部分 | math.modf(100.72) -> (0.7199999999999989, 100.0) |
12 | pow(x, y) | 返回 xy 的 值 | math.pow(2, 4) -> 16.0 |
14 | sqrt(x) | 返回 x 的 平方根 | math.sqrt(100) -> 10.0 |
四、三角函数
序号 | 函数 | 描述 | 实例 |
---|
01 | acos(x) | 返回 x 的 反余弦弧度值 (-1 < x < 1) | math.acos(0) -> 1.5707963267948966 |
02 | asin(x) | 返回 x 的 反正弦弧度值 (-1 < x < 1) | math.asin(0) -> 0.0 |
03 | atan(x) | 返回 x 的 反正切弧度值 (-1 < x < 1) | math.atan(0) -> 0.0 |
04 | atan2(y, x) | 返回 指定的 x,y 坐标 的 反正切值 | math.atan2(5,5) -> 0.7853981633974483 |
05 | cos(x) | 返回 x 弧度的 余弦值 | math.cos(0) -> 1.0 |
06 | hypot(x, y) | 返回 欧几里德范数 sqrt(x2 + y2) | math.hypot(3,4) -> 5.0 |
07 | sin(x) | 返回 x 弧度的 正弦值 | math.sin(0) -> 0.0 |
08 | tan(x) | 返回 x 弧度的 正切值 (-1 < x < 1) | math.tan(0) -> 0.0 |
09 | degrees(x) | 返回 x 弧度的 角度值 | math.degrees(math.pi) -> 180.0 |
10 | radians(x) | 返回 x 角度的 弧度值 | math.radians(math.pi) -> 0.05483113556160755 |
五、随机数函数
序号 | 函数 | 描述 | 实例 |
---|
01 | choice(seq) | 返回 序列 (列表、元组、字符串) 中的一个 随机项 | random.choice(range(100)) -> 10 |
02 | random() | 返回 随机生成的一个 浮点数,它在 [0,1) 范围内 | random.random() -> 0.46062752042459265 |
03 | randrange (start, end, step) | 返回 指定递增基数集合中的一个 随机数 | random.randrange(0, 100, 2) -> 10 |
04 | seed([x]) | 改变随机数生成器的 种子 ,可以在调用其他随机模块函数之前调用此函数。引用相同的 种子 则会产生相同的随机序列,否则将引用系统时间产生不同的随机序列 | random.seed(10) |
05 | shuffle(list) | 将列表的所有元素随机 排序 | random.shuffle(list) |
06 | uniform(x, y) | 返回 随机生成的一个 浮点数,它在 [x,y] 范围内 | random.uniform(7, 14) -> 7.995219151486673 |
六、数字常量
序号 | 常量 | 描述 | 实例 |
---|
01 | pi | 圆周率,一般以 π 来表示 | math.pi -> 3.141592653589793 |
02 | e | 自然常数 | math.e -> 2.718281828459045 |