常用模块——os模块/sys模块/os.path模块/random模块/shutil模块

时间:2021-10-27 23:41:14

---恢复内容开始---

1.sys模块

  解释器相关信息  

import sys
print(sys.path)           #环境变量
print(sys.modules)     #查看已加载的模块
print(sys.argv)           #获取终端调用时的参数
print(sys.version)      #获取解释器的版本信息
sys.exit()                  #程序出口
print()                      #当前平台名称
print(sys.api_version)  #接口版本                              

 

2.os模块

  与操作系统相关、对文件的处理、对路径的处理

常用模块——os模块/sys模块/os.path模块/random模块/shutil模块常用模块——os模块/sys模块/os.path模块/random模块/shutil模块
import os 
#os 主要用于与操作系统进行交互

os.getcwd()   #获取当前工作目录
os.chdir()      #切换工作目录
os.environ     #系统环境变量
os.curdir        #当前目录 一个点
os.pardir        #上一级目录  两个点

os.makedirs('a/b/c/')    #创建目录   可用递归创建 
os.mkdir('a')     #创建一个目录

os.removedirs('a/b/c')        #递归删除,如果空文件就删除,有文件就保留
os.rmdir('a')   #删除一个目录

os.remove('路径')     #删除文件   仅能删除文件
os.listdir('路径‘’)       #列出说有文件和文件夹名称
os.rename('原文件名‘,’新文件名‘)   #重命名文件/目录
os.sep      #返回一个当前平台路径分隔符
os.linesep  #当前平台的换行符
View Code

2/1.os下path模块

from os import path

path.abspath(path)    #返回path规范化的绝对路径
path.split(path)        #将路径拆分为  文件夹路径和文件名
path.dirname(__file__)            #返回当前路径的上一级
path.basename(path)   #获取最后一集的名称
path.exists(path)       #判断路径是否存在
path.isabs(path)       #是否是绝对路径
path.join(path1[,path2])#将多个名称拼接位路径,如果有多个起始符,取最后一个
path.normcase(path)     #大写变小写,斜杠根据当前平台修改
path.normpath(path)    #x斜杠会修改为当前平台的分隔符  可执行..来返回上一级

 3.random

  随机数模块

import random
#随机数模块
random.random()    #给一个大于等于0  小于1的 随机浮点数
random.randint(1,10)  #1-10  包括1和10的整数
random.randrange(1,10)   #1-10  包括1不包括10的整数
random.uniform(1,3)   #两边都包含的随机浮点数
random.sample([1,2,3,4,5],3)   #指定一个范围,并指定需要的随机个数
random.shuffle()     #打乱顺序,改变原有的列表
random.choice()    #随机选一个
random.choices([1,2,3,4,5],k=2)  #可以指定选择几个数

  练习:随机验证码

import random
def yzm(length):
    res = ''
    for i in range(length):
        a = random.randint(0,9)
        b = chr(random.randint(65,90))
        c = chr(random.randint(97,122))
        s = random.choice([a,b,c])
        res += str(s)
    return res

 

4.shutil

  用于操作文件 

shutil.copyfileobj()               #拷⻉⽂件 提供两个⽂件对象 ⻓度表示缓冲区⼤⼩
 shutil.copyfile(src, dst)      # 拷⻉⽂件 提供两个⽂件路径
 shutil.copymode()             # 拷⻉⽂件权限 提供两个⽂件路径
 shutil.copystat(src, dst)      
# 拷⻉⽂件状态信息 最后访问 最后修改 权限 提供两个⽂件路径
 shutil.copy(src, dst)           # 拷⻉⽂件和权限 提供两个⽂件路径
 shutil.copy2(src, dst)         # 拷⻉⽂件和状态信息 提供两个⽂件路径

  用于压缩文件

shutil.make_archive("test","tar","/Users/jerry/PycharmProjects/package/package1")      #   压缩文件名   格式    压缩文件的路径

  解压

import zipfile
z = zipfile.ZipFile("test.zip",'r')   #需解压文件的路径   读取模式
z.extractall()       #解压到的路径     默认和需解压文件的同一路径
z.close()