第2 章 数值类型的数据
2.1 整数类型
Python中的整数类型为int类,整数类型的范围可以很大,表示很大的整数,只受所在计算机硬件的限制。
二进制表示方式,以阿拉伯数字0与英文字母B(或b)作为前缀
八进制表示方式,以阿拉伯数字0与英文字母o(或o)作为前缀
十六进制表示方式,以阿拉伯数字0与英文字母x(或x)作为前缀
ps:通过内置的type()函数,可以判断一个对象指向的数据类型。
2.2 浮点类型
浮点类型主要用来存储小数数值,Python的浮点类型为float类。Python只支持双精度浮点类型,而且是与本机相关的。
使用科学计数法表示浮点数据,在科学计数法中会使用E(或e)表示10的指数,如e2表示102
2.3 复数类型
整数和浮点数(小数)在数学中被统称为实数。与实数对应的是复数,复数在数学中被表示为:a+bi,其中a被称为实部,b被称为虚部,i被称为虚数单位。
# 注意虚部符号只能是j
c = 3 + 4j
type(c) # 复数类型为:<class 'complex'>
2.4 布尔类型
Python中的布尔类型为bool类,bool是int的子类,它只有两个值:True和False。
2.5 数值函数
ps:Python中的整数位数可以为任意长度(只受限制于计算机内存)
使用数值函数,需要引入math模块
| 不常见运算符 | 描述 | 备注 |
|---|---|---|
| / | 取模 | 操作数可以为实数,3.5 % 3 = 0.5 |
| // | 向下整除 | 10//4=2 |
| ** | 乘方 | 2**3=8 |
| 内置数值函数 | 描述 |
|---|---|
| abs(x) | 求x的绝对值 |
| divmod(x,y) | 输出(x//y, x%y) |
| pow(x,y[,z]) | (x* * y)%z, []表示可选参数,当z省略的时候,等价于x* *y |
| round(x[,digits]) | 对x四舍五入操作,保留ndigits位小数,当ndigits省略的时候,返回x四舍五入后的整数值 |
| max(x1,x2,……,xn) | 返回x1,x2,……,xn中的最大值 |
| min(x1,x2,……,xn) | 返回x1,x2,……,xn中的最小值 |
① digits>0,四舍五入到指定的小数位
② digits=0,四舍五入到最接近的整数
③ digits<0,在小数点左侧进行四舍五入
ps:如果round()函数只有number这个参数,等同于digits=0
| 常数 | 数学形式 | 描述 |
|---|---|---|
| pi | π | 圆周率,值为3.141592653589793 |
| e | e | 自然对数,值为2.718281828459045 |
| inf | ∞ | 正无穷大,负无穷大为-inf |
| nan | 非浮点数标记,Not a Number |
| 函数 | 数学形式 | 描述 | ||
|---|---|---|---|---|
| fabs(x) | x | 返回x的绝对值 | ||
| fmod(x,y) | x % y | 返回x和y的余数 | ||
| fsum([x,y,……]) | x+y+…… | 浮点数精确求和 | ||
| gcd(a,b) | 返回a和b的最大公约数,a和b为整数 | |||
| trunc(x) | 返回x的整数部分 | |||
| modf(x) | 返回x的小数和整数部分 | |||
| ceil(x) | ⌈x⌉ | 向上取整,返回不小于x的最小整数 | ||
| floor(x) | ⌊x⌋ | 向下取整,返回不大于x的最大整数 | ||
| factorial(a) | x! | 返回a的阶乘,a为整数 | ||
| pow(x,y) | xy | 返回x的y次幂 | ||
| exp(x) | ex | 返回e的x次幂,e为自然对数 | ||
| sqrt(x) | 根号x | 返回x的平方根 | ||
| log(x[,base]) | logbasex | 返回x的对数值,只输入x时,返回lnx,[]可选 | ||
| log2(x) | logx | 返回x的2对数值 | ||
| log10(x) | log10x | 返回x的10对数值 | ||
| degrees(x) | x为弧度制,返回x对应的角度值 | |||
| radians(x) | x为角度制,返回x对应的弧度值 | |||
| hypot(x,y) | 根号(x2+y2 ) | 返回(x,y)坐标到原点(0,0)的距离 | ||
| sin(x) | sinx | 返回x的正弦函数值,x为弧度值 | ||
| cos(x) | cosx | 返回x的余弦函数值,x为弧度值 | ||
| tan(x) | tanx | 返回x的正切函数值,x为弧度值 | ||
| asin(x) | arc sinx | 返回x的反正弦函数值,x为弧度值 | ||
| acos(x) | arc cos x | 返回x的反余弦函数值,x为弧度值 | ||
| atan(x) | arc tan x | 返回x的反正切弦函数值,x为弧度值 | ||
2.6 可变和不可变对象
| 可变对象(传递地址) | 数组、字典、集合 |
|---|---|
| 不可变对象(传递值) | 字符串、元组、数字(int、float) |
① 可变对象:改变对象内容,对象在内存中的地址不会被改变
② 不可变对象:改变对象内容,对象在内存中的地址会被改变;如果必须存储一个不同的值,则必须创建新的对象
③ 当函数参数传递的变量是不可变对象的时候,函数内改变变量值,函数外的变量不会随之改变
④ 当函数参数传递的变量是可变对象的时候,函数内改变变量值,函数外的变量会随之改变