os 模块 && sys模块
1.os模块
os 直接与系统交互 os.path (系统路径相关)
方法一览
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd os.curdir 返回当前目录: ('.') os.pardir 获取当前目录的父目录字符串名:('..') os.makedirs('dirname1/dirname2') 可生成多层递归目录 os.removedirs('dirname1') 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推 os.mkdir('dirname') 生成单级目录;相当于shell中mkdir dirname os.rmdir('dirname') 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname os.listdir('dirname') 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印 os.remove() 删除一个文件 os.rename("oldname","newname") 重命名文件/目录 os.stat('path/filename') 获取文件/目录信息 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.environ 获取系统环境变量 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.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.join(path1[, path2[, ...]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略 os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间 os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间 os.path.getsize(path) 返回path的大小
1.获取当前目录 (文件的目录 或目录的目录)
current_dir = os.path.dirname(__file__) # 获取文件的目录 parent_dir = os.path.dirname(current_dir) #获取父级目录
2. 路径 拼接 可以用来传参
JOIN_PATH = os.path.join(current_dir,'test.txt') print(JOIN_PATH)
3.文件、目录的增删改
# #删除文件 不能删除文件夹 # os.remove('D:\workspace1\day-16\ee') # # 改名 rename 只能修改同级名称 #os.rename('name','newname') # os.renames('day-15','day--15') # # # 创建文件夹 # os.mkdir('D:\workspace1\day-16') # # # 删除空文件夹 # os.rmdir('D:\workspace1\day-16') # # 判断文件路径是否存在 print(os.path.isdir('D:\workspace1\day-15'))
#判断是否存在
print(os.path.exists(TEST_PATH)) # True
print(os.path.exists(DAY15_PATH))
4. 获取目录的列表
###获取某个文件夹中所有文件和文件夹的名字 返回一个列表 # namelist = os.listdir('D:\workspace1\day-15') # print(namelist)
5.枚举
# # (可迭代对象) ---> 得到一个对象,对象有一个个的元组(索引, 元素) # res = enumerate(namelist) # print(list(res))
2.sys模块
Python的sys模块提供访问解释器使用或维护的变量,和与解释器进行交互的函数
1 sys.argv 命令行参数List,第一个元素是程序本身路径 2 sys.exit(n) 退出程序,正常退出时exit(0) 3 sys.version 获取Python解释程序的版本信息 4 sys.maxint 最大的Int值 5 sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 6 sys.platform 返回操作系统平台名称