1. os模块中关于文件目录函数使用
1) os.getcwd() 返回当前工作目录
>>> import os
>>> os.getcwd()
'D:\\Pathon软件\\Pathon'
2)os.chdir(path) 改变工作目录
>>> os.chdir('E:\\')
3)os.listdir(path='.') 列举指定目录中的文件名('.'表示当前目录,'..'表示上级目录)
>>> os.listdir('C:\\')
['$RECYCLE.BIN', 'Config.Msi', 'Documents and Settings', 'hiberfil.sys', 'Intel', 'pagefile.sys', 'PerfLogs', 'Program Files', 'Program Files (x86)', 'ProgramData', 'Recovery', 'Recycler', 'swapfile.sys', 'System Volume Information', 'Users', 'Windows']
4)os.mkdir(path) 创建单层目录,若该目录已存在抛出异常
>>> os.mkdir('d:\\A Plan\\B Plan')
5)os.makedirs(path) 递归创建多层目录,若该目录已存在抛出异常(注意:'E:\\a\\b'和'E:\\a\\c'并不会冲突)
>>> os.makedirs('d:\\A Plan\\B Plan')
6)os.remove(path) 删除文件
os.removedirs('d:\\A Plan\\B Plan')
7)os.rmdir(path) 删除单层目录,若该目录非空择抛出异常
>>> os.rmdir('d:\\A Plan\\B Plan')
8)os.removedirs(path) 递归删除目录,从子目录到父目录逐层尝试删除,遇到目录非空则抛出异常
>>> os.removedirs('d:\\A Plan\\B Plan')
9)os.rename(old, new) 将文件old重命名为new
2. os.path模块中关于常用路径的函数使用
1)os.path.basename(path) 去掉目录路径,单独返回文件名
>>> os.path.basename('D:\2010\第11章\\工资管理系统.xlsm')
'工资管理系统.xlsm'
2) os.path.dirname(path) 去掉文件名,单独返回目录路径
>>> os.path.dirname('D:\2010\第11章\\工资管理系统.xlsm')
'D:\x810\\第11章'
3)os.path.join(path1 [,path2] [,... ]) 将path1、path2各部分合成一个路径名
>>> os.path.join('d:\\','A', 'B','C')
'd:\\A\\B\\C'
4)os.path.split(path) 分割文件名和路径,返回(file_path, file_name)元组。如果完全使用目录,它也会将最后一个目录作为文件名分离,且不会判断文件或者目录是否存在。
>>> os.path.split('D:\2010\第11章\\工资管理系统.xlsm')
('D:\x810\\第11章', '工资管理系统.xlsm')
5)os.path.splitext(path) 分离文件名和扩展名,返回(file_name, file_extension)元组。
>>> os.path.splitext('D:\2010\第11章\\工资管理系统.xlsm')
('D:\x810\\第11章\\工资管理系统', '.xlsm')
6)os.path.getsize(file) 返回指定文件的尺寸,单位是字节
>>> file = r'd://2010/第11章/工资管理系统.xlsm'
>>> os.path.getsize(file)
137604
7)os.path.getatime() / getctime() / getmtime() 返回指定文件的当前时间/创建时间/修改时间(ps:活得浮点型秒数,可用time模块的gtime()或者localtime()函数换算)
>>> import time
>>> time.gmtime(os.path.getatime('D:\\demo.txt'))
time.struct_time(tm_year=2019, tm_mon=7, tm_mday=20, tm_hour=13, tm_min=17, tm_sec=7, tm_wday=5, tm_yday=201, tm_isdst=0)
>>> time.localtime(os.path.getatime('D:\\demo.txt'))
time.struct_time(tm_year=2019, tm_mon=7, tm_mday=20, tm_hour=21, tm_min=17, tm_sec=7, tm_wday=5, tm_yday=201, tm_isdst=0)
>>> time.localtime(os.path.getmtime('D:\\demo.txt'))
time.struct_time(tm_year=2019, tm_mon=7, tm_mday=20, tm_hour=21, tm_min=22, tm_sec=31, tm_wday=5, tm_yday=201, tm_isdst=0)
>>> time.localtime(os.path.getctime('D:\\demo.txt'))
time.struct_time(tm_year=2019, tm_mon=7, tm_mday=20, tm_hour=21, tm_min=17, tm_sec=7, tm_wday=5, tm_yday=201, tm_isdst=0)