Python 入门之 内置模块 -- os模块
1、os os是和操作系统做交互,给操作发指令
os模块是与操作系统交互的一个接口,它提供的功能多与工作目录,路径,文件等相关
(1)工作路径
print(os.getcwd()) # 获取当前文件工作的路径 ***
os.chdir("D:\Python_s25\day16") # 路径切换 **
print(os.getcwd())
print(os.curdir) #返回当前目录: ('.')
print(os.pardir) #获取当前目录的父目录字符串名:('..')
(2)文件夹
os.mkdir("a2") # 创建文件夹
os.rmdir("a2") # 删除文件夹
os.makedirs('a1/a2/a3') # 递归创建文件夹
os.removedirs("a1/a2/a3") # 递归删除文件夹
print(os.listdir(r"D:\Python_s25\day17")) # 查看当前文件下所有的内容
(3)文件
os.remove(r"D:\Python_s25\day17\a") #删除文件,彻底删除 找不回来
os.rename() # 重命名
os.stat('path/filename') # 获取文件/目录信息
(4)路径
print(os.path.abspath("test")) # 返回的是绝对路径
print(os.path.split(r"D:\Python_s25\day17\test")) #将路径分割成一个路径和一个文件名
print(os.path.dirname(r"D:\Python_s25\day17\test")) #获取到父目录
print(os.path.basename(r"D:\Python_s25\day17\test")) #获取文件名
print(os.path.join("D:\Python","day17","test")) # 路径拼接 (非常重要)
os.path.exists(path) # 如果path存在,返回True;如果path不存在,返回False
os.path.isabs(path) # 如果path是绝对路径,返回True
os.path.isfile(path) # 如果path是一个存在的文件,返回True。否则返回False
os.path.isdir(path) # 如果path是一个存在的目录,则返回True。否则返回False
os.path.getatime(path) # 返回path所指向的文件或者目录的最后访问时间
os.path.getmtime(path) # 返回path所指向的文件或者目录的最后修改时间
os.path.getsize(path) # 返回path的大小
(5)判断
print(os.path.exists(r"D:\Python_s25\day17\blog")) # 判断当前路劲是否存在
print(os.path.isabs(r"D:\Python_s26\day17\blog")) # 判断是不是绝对路径
print(os.path.isdir(r"D:\Python_s25\day17\blog")) # 判断是不是文件夹
print(os.path.isfile(r"D:\Python_s25\day17\blog")) # 判断是不是文件
print(os.path.getsize(r"D:\Python_s25\day17\01 今日内容.py")) # 获取文件大小
print(os.path.getsize(r"D:\Python_s25")) # 获取文件大小
(6)操作系统相关
os.sep # 输出操作系统特定的路径分隔符,win下为"\\",Linux下为"/"
os.linesep # 输出当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"
os.pathsep # 输出用于分割文件路径的字符串 win下为;,Linux下为:
os.name # 输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
# 和执行系统命令相关
os.system("bash command") # 运行shell命令,直接显示
os.popen("bash command").read() # 运行shell命令,获取执行结果
os.environ # 获取系统环境变量
(7)os.stat('path/filename') 获取文件/目录信息 的结构说明
# stat 结构:
st_mode: inode # 保护模式
st_ino: inode # 节点号。
st_dev: inode # 驻留的设备。
st_nlink: inode # 的链接数。
st_uid: # 所有者的用户ID。
st_gid: # 所有者的组ID。
st_size: # 普通文件以字节为单位的大小;包含等待某些特殊文件的数据。
st_atime: # 上次访问的时间。
st_mtime: # 最后一次修改的时间。
st_ctime: # 由操作系统报告的"ctime"。在某些系统上(如Unix)是最新的元数据更改的时间,在其它系统上(如Windows)是创建时间(详细信息参见平台的文档)