python---系统模块

1、什么是模块?
一个py或者一堆py文件的总称,这些文件都是为了某些特定的功能而写的代码
2、为什么要使用模块?
方便管理,提升开发效率
3、模块的分类
内置模块,也叫做标准库。此类模块就是python解释器给你提供的,比如我们之前见过的time模块,os模块。标准库的模块非常多
第三方模块,第三方库。一些python大神写的非常好用的模块,必须通过pip install 指令安装的模块
自定义模块。我们自己在项目中定义的一些模块。
4、模块的导入
import module_name------导入哪个模块
import module_name as 别名------导入哪个模块,起一别名
from 模块 import 子模块-----从一个模块中导入他的子模块
5、常见的系统模块
random模块:随机数模块
导入模块
import random
random()#返回一个[0,1)的随机数,伪随机数
在这里插入图片描述
randint()#返回[m,n]之间的随机数
在这里插入图片描述
choice()#从序列中随机选择一个元素
在这里插入图片描述
randrange(m)#随机生成[0,m)之间的整数
在这里插入图片描述

math模块:操作数运算
math.ceil()#向上取整
math.floor()#向下取整math.e#自然常数(属性)
math.pi#圆周率(属性)
math.fabs()#求绝对值
math.fmod(10,3)#求模
math.pow(2,3)#求幂次方
math.sqrt()#求开平方根

os模块:主要用来操作操作系统中的文件系统
os.chdir()#修改当前工作目录
在这里插入图片描述
os.curdir#表示当前路径,相对路径
在这里插入图片描述
os.chmod()#修改权限
在这里插入图片描述
os.cpu_count()#获取当前系统的cpu核数
在这里插入图片描述
os.getcwd()#获取当前路径,绝修路径
在这里插入图片描述
os.listdir()#遍历得到当前工作空间下的所有文件和文件夹
在这里插入图片描述
os.makedirs()#创建多层文件夹
在这里插入图片描述
在这里插入图片描述
os.mkdir()#创建一层文件夹
os.remove()#删除文件
在这里插入图片描述
os.removedirs()#删除空文件夹,可以多级文件夹
在这里插入图片描述
在这里插入图片描述
os.rename()#重命名
在这里插入图片描述
在这里插入图片描述
os.rename()#重命名多个
os.rmdir()#递归删除,每次一个,将最里边的开始删除
在这里插入图片描述
os.scandir()#返回一个迭代器对象,遍历当前工作目录下的所有文件
在这里插入图片描述
os.sep#返回系统对应的分隔符
在这里插入图片描述
os.system()#该方法可以执行该系统对应的所有终端命令
在这里插入图片描述

os.path模块:是一个os的子模块,主要是用来操作文件
path.abspath()#显示路径的绝对路径
在这里插入图片描述
path.basename()#一般是显示对应路径的文件名称
在这里插入图片描述
exists()#判断文件或文件夹是否存在
在这里插入图片描述
getsize()#获取文件的大小
在这里插入图片描述
isdir()#判断是否为目录
在这里插入图片描述
isfile()#判断是否为文件
在这里插入图片描述
islink()#判断是否为链接
在这里插入图片描述
join拼接路径
在这里插入图片描述
ismount判断是否为挂载点目录
在这里插入图片描述
realpath()#显示真实路径
在这里插入图片描述
split()#分割路径
在这里插入图片描述

sys模块:
‘argv’(很重要) # 返回脚本名称和执行脚本时传递参数
在这里插入图片描述
在这里插入图片描述
‘exit’(重要) # 退出系统 ,默认0为正常退出,若是其他的参数,表示以不同的状态退出
在这里插入图片描述
在这里插入图片描述

‘getdefaultencoding’(重要)# 获取系统的默认编码
在这里插入图片描述

‘getfilesystemencoding’ # 获取系统文件的编码
在这里插入图片描述

‘getrecursionlimit’(重要) # 获取系统对于递归的层数限制
在这里插入图片描述

‘getrefcount’(重要) # 获取变量的引用计数

注意:
python的垃圾回收机制:是以引用计数为主,已标记清除和分代收集为辅; 垃圾内存(已经不在使用的内存空间)
而面向对象的语言不在由程序员来管理,由一个系统已经制定好的线程来管理和维护内存

‘path’(很重要) # 所有系统变量路径
在这里插入图片描述

‘platform’ # 获取系统平台
在这里插入图片描述

‘setrecursionlimit’(重要) # 设置系统对于递归的层数限制,不建议使用方法
在这里插入图片描述

stderr # 标准错误输出
在这里插入图片描述

‘stdin’, # 标准输入
在这里插入图片描述
‘stdout’ # 标准输出
在这里插入图片描述

‘thread_info’ # 系统线程信息
在这里插入图片描述
在这里插入图片描述

‘version’ # 解释器版本
在这里插入图片描述

‘version_info’ # 解析器内核版本信息
在这里插入图片描述

hashlib:(哈希)编程中,进行加密加密算法的分类以是否可逆
可逆算法
加密和解密是否使用同一个密钥而言:
对称加密 # 使用同一个密钥
非对称加密 # 使用一对密钥
不可逆算法 hash算法可以将任何东西加密为32位的16进制的字符串
特点:唯一性、不可逆行
md5
shale256 …

算法的使用场景 校验 安全 …
注意 md5算法安全问题
md5 很安全 唯一性
12345 e10adc3949ba59abbe56e057f20f883e

hash算法虽然不可逆,但是存在着碰撞的概念,使用hash时,建议使用盐值混淆
import hashlib
md5 = hashlib.md5(“要加密的数据”.encode(“utf-8”))
在这里插入图片描述
md5.update(“openlab”.encode(“utf-8”)) # 盐值混淆
在这里插入图片描述
md5.hexdigest() # 得到需要加密数据的散列值
在这里插入图片描述
第二种写法
md5 = hashlib.md5()
md5.update(“要加密的数据”.encode(“utf-8”))
md5.update(“openlab”.encode(“utf-8”)) # 盐值混淆----就是将123123+openlab进行加密md5.hexdigest()

import hmacmd=hmac.new(‘123123’.encode(‘utf-8’),‘jialeilei’.encode(‘utf-8’),‘md5’)
在这里插入图片描述

time模块
Python 提供专门用来操作时间和日期的模块
sleep # 让当前线程暂停,注意单位是秒
在这里插入图片描述
time # 返回的是当前时间戳 1970-1-1 0:0:0 时间戳指的是从1970年到现在的时间
在这里插入图片描述
ctime # 返回当前时间
在这里插入图片描述
localtime # 获取一个时间对象
在这里插入图片描述
在这里插入图片描述
strftime # 将一个时间对象格式化为特定字符串
在这里插入图片描述
strptime # 将一个特定字符串解析为时间对象
在这里插入图片描述
datetime模块
|-- datetime.datetime.now # 获取当前系统时间

calendar模块 日历模块(选修)
面试题:
在shell 怎么获取脚本执行时指定的参数?
$1 $2
注意:
不再由程序员来管理,由一个系统已经制定的好的线程来管理和维护内存

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值