python中的内置模块
一、常见的系统内置模块的使用
math,random,uuid,os,os.path,sys,time,datetime,calendar。
我们主要看以下几种:
1.math:该模块主要用于数学和相关计算的一个模块
(1)属性(自身带有固定值):
pi: #圆周率
e: #自然常数
(2)使用方法命令:
三角函数类:sin,cos,tan…
对数:log, log10, log1p, log2…
ceil():# 向上取整
floor():# 向下取整
fabs(): # 绝对值
sqrt():# 开平方
pow():# 幂次方
round:# 全局函数,主要用于四舍五入
2.random:随机生成
(1)使用方法命令:
random.random(): # 随机[0~1)区间
random.randint():# [a, b] 区间的随机整数
random.uniform:# [a, b] 区间的随机数
random.choice(容器):# 随机选择一个元素
random.shuffle(容器):# 洗牌,随机打散数据
3.uuid:通用唯一标识符 ( Universally Unique Identifier )它是通过MAC地址, 时间戳, 命名空间, 随机数, 伪随机数来保证生成ID的唯一性, 有着固定的大小( 128 bit ).
(1)几个函数用法:
uuid.uuid1([node[, clock_seq]]) : 基于时间戳
uuid.uuid3(namespace, name) : 基于名字的MD5散列值
uuid.uuid4() : 基于随机数
4.os:对操作系统的封装
使用命令:
|-- curdir # 返回当前路径,相对路径
|-- getcwd() # 获取绝对路径,注意返回字节
|-- chdir(path) # 修改当前工作空间路径
|-- cpu_count() # 获取当前电脑的核(线程)数量
|-- chmod() # 修改权限(Linux)
|-- defpath() # 默认查找文件路径
|-- device_encoding # 文件编码
|-- getpid() # 获取当前进程的编号
|-- getppid() # 获取当前进程的父进程编号
|-- kill # 杀死进程
|-- linesep # 获取当前系统的换行符
|-- listdir() # 获取当前工作空间下的文件及文件件,返回列表
|-- scandir # 获取当前工作空间下的文件及文件件,返回一个迭代器
|-- mkdir # 创建目录,只能创建一级目录
|-- makedirs() # 创建目录,可以递归创建多级
|-- open() # 打开或者创建文件
|-- remove() # 删除文件
|-- removedirs() # 删除目录
|-- rmdir # 删除目录
|-- rename # 重命名
|-- sep # 路径分隔符
|-- stat() # 返回文件状态
5.os.path模块
(1)使用方法命令:
|-- abspath # 获取绝对路径 (dirname + basename)
|-- altsep # 文件分隔符
|-- basename # 文件名称
|-- dirname # 所属目录
|-- exists()
|-- join()
|-- 几个判断函数
|-- split()
6.sys:在外部向程序内部传递参数
(1)使用方法命令:
|-- argv # 脚本传参
|-- exit() # 退出系统
|-- getdefaultencoding() # 获取系统的默认编码
|-- getfilesystemencoding() # 获取文件编码
|-- setrecursionlimit(num) # 设置递归的极限值
|-- getrecursionlimit() # 获取递归的极限值
|-- getrefcount() # 获取对象的引用计数
垃圾回收算法:引用计数法: 缺点:循环引用时,就无法回收内存
7.time:时间模块
(1)使用方法命令:
|-- asctime() # 返回一个日期字符串
|-- ctime() # 返回一个日期字符串
|-- gmtime() # 获取一个时间对象
|-- localtime() # 获取一个时间对象
|-- time() # 获取当前时间戳
|-- sleep(sec) # 休眠
|-- strftime() # 格式化时间
|-- strptime() # 将一个字符串格式时间,转换为日期对象
8.datetime:日期
(1)使用方法命令:
|-- time([hour[,minutes][,seconds]]) # 构建一个时间对象
|-- date(year,month,day) # 构建一个日期对象
|-- datetime子模块
(2)datetime子模块:
|-- astimezone(时间对象) # 返回当前时区对应的时间对象
|-- datetime.now() # 返回当前时间对象
|-- ctime(时间对象) # 一个符合欧美标准的时间字符串
|-- time(时间对象) # 返回时间对象的时间部分
|-- date(时间对象) # 返回
(3)时间对象的日期部分
|-- day#日期
|-- now#当前时间
|-- minute#分
|-- second#秒
|-- microsecond # 微秒
9.calendar:日历模块
(1)查询日历方法
import calendar
print(calendar.calendar(2018))