os模块
功能:获取操作系统的信息,及对操作系统进行操作
应用场景:常用于对文件、路径的查找统计操作等
重点方法
方法名 | 功能 |
---|---|
os.path.getsize(绝对路径) | 获取文件的大小,但是不能获取文件夹的准确大小(单位默认为字节) |
os.path.isfile(绝对路径) | 判断是否是文件 |
os.path.isdir(绝对路径) | 判断是否是文件夹/目录 |
os.path.join(文件夹的名字,名字) | 跨平台的文件路径的拼接 |
os.path.split(path) | 将path分割成目录和文件名二元组返回 |
os.listdir(文件夹路径) | 显示这个文件夹下的所有名字(包括文件和文件夹) |
os.path.getsize()
功能:获取文件对大小,但是不能获取文件夹对准确大小
返回值:int类型,文件大小,默认单位是字节
import os
ret1 = os.path.getsize('/Users/classes/day06/practice/re.py')
ret2 = os.path.getsize('/Users/classes/day06/practice/')
print(ret1) # 2145
print(ret2) # 128 无法获取准确的文件夹大小
os.path.isfile()
功能:判断是否为文件
返回值:True 或者 False
import os
ret1 = os.path.isfile('/Users/classes/day06/practice/re.py')
ret2 = os.path.isfile('/Users/classes/day06/practice/')
print(ret1) # True
print(ret2) # False
os.path.isdir()
功能:判断是否为文件夹/目录
返回值:True 或者 False
import os
ret1 = os.path.isdir('/Users/classes/day06/practice/re.py')
ret2 = os.path.isdir('/Users/classes/day06/practice/')
print(ret1) # False
print(ret2) # True
os.path.join()
功能:跨平台的文件路径拼接
返回值:str数据类型,拼接后的完整文件路径
import os
direct = '/Users/classes/day06/practice'
file = 're.py'
ret = os.path.join(direct,file)
print(ret) # /Users/classes/day06/practice/re.py
os.path.split()
功能:将path分割成目录和文件名二元组返回
返回值:tuple 元组数据类型;元素1:目录,元素2:文件名
import os
path_abs = '/Users/classes/day06/practice/re.py'
ret = os.path.split(path_abs)
print(ret) # ('/Users/classes/day06/practice', 're.py')
os.path.listdir()
功能:显示这个文件夹/目录下的所有名字(包括文件和文件夹的名字)
返回值:list 列表数据类型,元素是文件及文件夹的名字
import os
ret = os.listdir('/Users/classes/day06/practice/')
print(ret) # ['os.py', 'directory', 're.py']
其他方法
文件/文件夹 操作
方法名 | 功能 |
---|---|
os.mkdirs(‘dirname1/…/dirnamen/’) | 可生成多层递归目录 |
os.removedirs(dirname1) | 若目录为空,则删除,并递归到上级目录,如若也为空,则删除,依此类推 |
os.mkdir(dirname) | 生成单级目录;相当于shell中的mkdir dirname |
os.rmdir(dirname) | 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中的rmdir dirname |
os.remove() | 删除一个文件 |
os.rename(oldname,newname) | 重命名文件/文件夹 |
os.stat(‘path/filename’) | 获取文件/目录信息 |
操作系统命令相关
方法名 | 功能 |
---|---|
os.system(“bash command”) | 运行shell命令,直接显示 |
os.popen(“bash command”) | 运行shell命令,获取执行结果;通过.read()返回结果 |
os.getcwd() | 获取当前工作目录,即当前python脚本工作的路径 |
os.chdir(“dirname”) | 改变当前脚本工作目录;相当于shell中的cd |
os.path
方法名 | 功能 |
---|---|
os.path.abspath(path) | 返回path规范化的绝对路径 |
os.path.split(path) | 将path分割成目录和文件名二元组返回 |
os.path.dirname(path) | 返回path的目录,即os.path.split(path)的第一个元素 |
os.path.basename(path) | 返回path最后的文件名;如果path以/或\结尾,那么返回空值,即os.path.split(path)的第二个元素 |
os.path.exist(path) | 如果path存在,返回True;否则返回False |
os.path.isabs(path) | 如果path是绝对路径,返回True |
os.path.isfile(path) | 若path是一个文件,返回True;否则返回False |
os.path.isdir(path) | 若path是一个目录,返回True;否则返回False |
os.path.join(path[,path2[,…]]) | 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略 |
os.path.getatime(path) | 返回path所指向的文件或者目录的最后访问时间 |
os.path.getmtime(path) | 返回path所指向的文件或者目录的最后修改时间 |
os.path.getsize(path) | 返回path的大小 |