1.random模块
该模块主要 用来产生随机数(伪随机数)
面试是通过算法编写的伪随机数,不是真的随机数
1) randint(m,n) # 产生随机整数[m, n]
2)random() # 产生一个0~1内的随机数
3) choice() # 在序列(seq)中随机筛选一个元素
4) uniform() # 产生的基于正态分布的随机数
2、math模块
1)ceil # 向上取整
2) floor # 向下取整
注意:全局函数的中round # 四舍五入
3) e # 自然常数
pi # 圆周率
4) fabs # 求绝对值,等价于 全局函数abs
5) fmod # 求模的
6) isnan() # 判断某个数值不是数值(是数值返回true)
7) pow() # 幂次方,等价于 全局函数pow
8) sqrt() # 开平方根
3.sys模块
1)api_version # python的内部版本号
2) argv() # 接收脚本参数的,注意第一个参数是脚本名称
import sys
print(sys.argv) #接收脚本参数
3) copyright # 输出cpython的版权信息
4)sys.exit() # 退出系统
5) getdefaultencoding() # 获取默认编码,默认是utf-8 6)getfilesystemencoding()# 获取文件系统默认编码,默认是utf-8
7) getrecursionlimit() # 获取python对于递归的限制层数
setrecursionlimit(num) # 重新设置递归的限制层数
8) getrefcount(对象) # 获取对象的引用计数,垃圾回
收机制中
9)getwindowsversion # 获取窗口的版本信息
version # 获取版本信息
4.hashlib库
哈希算法
(注意:hashlib所有hash操作起来一样)
使用步骤:
1、创建算法对象(md5 sha256),返回一个算法对象
# 注意:参数值字节数据
md5 = hashlib.md5(“123456”.encode(“utf-8”))
2、如果不做盐值混淆,直接调用hexdigest()方法
md5.hexdigest()
使用在线MD5破密
3、盐值混淆
hash容易碰撞破解,一般建议使用盐值混淆
md5.update(salt)
5.hmac
也是一个哈希加密库,而且使用对称加密
首先会使用对称加密(秘钥就是盐值),之后将加密后的数据再做一次hash加密,盐值混淆
所以整个结果十分安全
6.time
python提供操作时间和日期的模块
1) asctime() # 获取当前时间
2) ctime() # 获取当前时间
3)localtime() # 本地时间,方便于自己完成格式化
4) sleep(1) # 休眠时间,单位是秒,延时
5) time() # 获取当前时间戳
6)strptime # 将一个特定格式的时间字符串转换为时间对象
7) strftime # 将一个时间对象格式化为特定的字符串
7.datetime
这个对time模块补充
datetime子模块
now() # 获取当前时间
8.uuid(通用唯一识别码)
永不重复的字符串
uuid.uuid4().hex