第三十六节,os系统级别操作模块
在使用os模块时需要先 import os 引入模块
os.getcwd()模块函数
功能:获取当前工作目录,即当前python脚本工作的目录路径【无参】
使用方法:os.getcwd()
格式如:a = os.getcwd()
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.getcwd() #获取当前工作目录,即当前python脚本工作的目录路径【无参】 print(a) #输出 #H:\py
os.chdir()模块函数
功能:改变当前脚本工作目录;相当于shell下cd【有参】
使用方法:os.chdir("字符串格式要更改的路径")
格式如:os.chdir("D:")
#!/usr/bin/env python # -*- coding:utf8 -*- import os retval = os.getcwd() # 查看当前工作目录 print("当前工作目录为 %s" % retval) os.chdir("D:") # 修改当前工作目录 retval = os.getcwd() # 查看修改后的工作目录 print("目录修改成功 %s" % retval) #输出 # 当前工作目录为 H:\py # 目录修改成功 D:\
os.curdir模块函数
功能:返回当前目录: ('.')【无参】
使用方法:os.curdir
格式如:a = os.curdir
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.curdir #返回当前目录: ('.') print(a) #输出 # .
os.pardir模块函数
功能:获取当前目录的父目录字符串名:('..')【无参】
使用方法:os.pardir
格式如:a = os.pardir
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.pardir #获取当前目录的父目录字符串名:('..') print(a) #输出 # ..
os.makedirs()模块函数
功能:可创建多层递归目录【有参】
使用方法:os.makedirs("要创建的目录名称或路径")
格式如:os.makedirs("div1/div2/div3")
#!/usr/bin/env python # -*- coding:utf8 -*- import os os.makedirs("div1/div2/div3") #可创建多层递归目录
os.removedirs()模块函数
功能:若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推【有参】
使用方法:os.removedirs("要删除的目录名称或路径")
格式如:os.removedirs("div1/div2/div3")
#!/usr/bin/env python # -*- coding:utf8 -*- import os os.removedirs("div1/div2/div3") #若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推【有参】
os.mkdir()模块函数
功能:创建单级目录;相当于shell中mkdir 【有参】
使用方法:os.mkdir("要创建的目录名称")
格式如:os.mkdir("dsr")
#!/usr/bin/env python # -*- coding:utf8 -*- import os os.mkdir("dsr") #生成单级目录;相当于shell中mkdir 【有参】
os.rmdir()模块函数
功能:删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir【有参】
使用方法:os.rmdir("要删除的目录名称")
格式如:os.rmdir("dsr")
#!/usr/bin/env python # -*- coding:utf8 -*- import os os.rmdir("dsr") #删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir【有参】
os.listdir()模块函数
功能: 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印【有参】
使用方法:os.listdir("目录名称")
格式如:a = os.listdir("lib")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.listdir("lib") #列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印【有参】 print(a) #输出文件名称和目录名称 # ['mk.py', '__pycache__']
os.remove()模块函数
功能: 删除一个文件,对目录不起作用【有参】
使用方法:os.remove("要删除的目录名称")
格式如:os.remove("2.txt")
#!/usr/bin/env python # -*- coding:utf8 -*- import os os.remove("2.txt") #删除一个文件
os.rename()模块函数
功能: 重命名文件或目录【有参】
使用方法:os.rename("文件或者目录名称","要修改成的文件或目录名称")
格式如:os.rename("1.txt", "2.txt")
#!/usr/bin/env python # -*- coding:utf8 -*- import os os.rename("1.txt", "2.txt") #重命名文件或目录
os.stat()模块函数【常用】
功能:获取文件或者目录信息【有参】
使用方法:os.stat("要获取信息的文件或目录名称")
格式如:a = os.stat("22")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.stat("22") #获取文件或者目录信息 print(a)
os.sep模块函数
功能:操作系统特定的路径分隔符,win下为"\",Linux下为"/"【无参】
使用方法:os.sep
格式如:a = os.sep
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.sep #操作系统特定的路径分隔符,win下为"\",Linux下为"/" print(a)
os.linesep模块函数
功能:当前平台使用的换行符,win下为"\t\n",Linux下为"\n"【无参】
使用方法:os.linesep
格式如:a = os.linesep
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.linesep #当前平台使用的行终止符,win下为"\t\n",Linux下为"\n" b = "你好%s在吗" %(a) #相当于加了\n换行符 print(b) #输出 # 你好 # 在吗
os.pathsep模块函数
功能:用于分割文件路径的字符串【无参】
使用方法:os.pathsep
格式如:a = os.pathsep
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.pathsep #用于分割文件路径的字符串 print(a) #输出 # ;
os.name模块函数
功能:字符串指示当前使用平台。win->'nt'; Linux->'posix'【无参】
使用方法:os.name
格式如:a = os.name
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.name #字符串指示当前使用平台。win->'nt'; Linux->'posix' print(a) #输出 # nt
os.system()模块函数
功能:运行shell命令,直接显示【有参】
使用方法:os.system("shell系统命令")
格式如:os.system("bash command")
#!/usr/bin/env python # -*- coding:utf8 -*- import os os.system("bash command") #运行shell命令,直接显示
os.environ模块函数
功能:获取系统环境变量【无参】
使用方法:os.environ
格式如:a = os.environ
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.environ #获取系统环境变量 for i in a: #循环出系统环境变量 print(i) #输出 # USERPROFILE # COMSPEC # PYTHONPATH # PROCESSOR_LEVEL # OS # USERNAME # ALLUSERSPROFILE # PROGRAMFILES(X86) # PROGRAMFILES # NUMBER_OF_PROCESSORS # PROGRAMDATA # LOCALAPPDATA # PUBLIC # PSMODULEPATH # COMMONPROGRAMFILES(X86) # HOMEDRIVE # SESSIONNAME # LOGONSERVER # PATHEXT # COMMONPROGRAMFILES # SYSTEMDRIVE # WINDIR # COMPUTERNAME # USERDOMAIN_ROAMINGPROFILE # PATH # PYTHONIOENCODING # SYSTEMROOT # COMMONPROGRAMW6432 # PROCESSOR_ARCHITECTURE # USERDOMAIN # PYCHARM_HOSTED # APPDATA # TEMP # PROGRAMW6432 # PROCESSOR_IDENTIFIER # HOMEPATH # PROCESSOR_REVISION # PYTHONUNBUFFERED # TMP
os.path.abspath()模块函数
功能:返回一个文件或者目录的规范化的绝对路径【有参】
使用方法:os.path.abspath("要返回规范绝对路径的文件或者目录名称")
格式如:a = os.path.abspath("mk.py")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.path.abspath("mk.py") #返回一个文件或者目录的规范化的绝对路径 print(a) #输出 # H:\py\mk.py
os.path.split()模块函数
功能:将文件分割成目录和文件名二元组返回【有参】
使用方法:os.path.split("路径或名称")
格式如:a = os.path.split("mk.py")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.path.split("mk.py") #将path分割成目录和文件名二元组返回 print(a) #输出 # ('', 'mk.py')
os.path.dirname()模块函数【常用】
功能:返回文件的目录【有参】
使用方法:os.path.dirname("文件路径")
格式如:a = os.path.dirname("py/lib/mk.py")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.path.dirname("py/lib/mk.py") #返回文件的目录 print(a) #输出 # py/lib
os.path.basename()模块函数
功能:返回文件最后的文件名。如何文件以/或\结尾【有参】
使用方法:os.path.basename("文件路径")
格式如:a = os.path.basename("py/lib/mk.py")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.path.basename("py/lib/mk.py") #返回文件最后的文件名。如何文件以/或\结尾 print(a) #输出 # mk.py
os.path.exists()模块函数【常用】
功能:如果文件存在,返回True;如果文件不存在,返回False【有参】
使用方法:os.path.exists("文件路径")
格式如:a = os.path.exists("H:/py/lib/mk.py")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.path.exists("H:/py/lib/mk.py") #如果文件存在,返回True;如果文件不存在,返回False print(a) #输出 # True
os.path.isabs()模块函数【常用】
功能:如果文件是绝对路径,返回True【有参】
使用方法:os.path.isabs("文件路径")
格式如:a = os.path.isabs("H:/py/lib/mk.py")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.path.isabs("H:/py/lib/mk.py") #如果文件是绝对路径,返回True print(a) #输出 # True
os.path.isfile()模块函数【常用】
功能:如果文件是一个存在的文件,返回True。否则返回False【有参】
使用方法:os.path.isfile("文件路径")
格式如:a = os.path.isfile("H:/py/lib/mk.py")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.path.isfile("H:/py/lib/mk.py") #如果文件是一个存在的文件,返回True。否则返回False print(a) #输出 # True
os.path.isdir()模块函数【常用】
功能:如果目录是一个存在的目录,则返回True。否则返回False【有参】
使用方法:os.path.isdir("目录路径")
格式如:a = os.path.isdir("H:/py/lib")
#!/usr/bin/env python # -*- coding:utf8 -*- import os a = os.path.isdir("H:/py/lib") #如果目录是一个存在的目录,则返回True。否则返回False print(a) #输出 # True
os.path.join()模块函数【常用】
功能:将多个字符串路径组合成一个完整的路径返回,第一个绝对路径之前的参数将被忽略【有参】
使用方法:os.path.join("文件路径")
格式如:a = os.path.join(s1,s2,s3,s4)
#!/usr/bin/env python # -*- coding:utf8 -*- import os s1 = "H:" s2 = "py" s3 = "lib" s4 = "mk.py" a = os.path.join(s1,s2,s3,s4) #将多个字符串路径组合成一个完整的路径返回,第一个绝对路径之前的参数将被忽略【有参】 print(a) #输出 #H:py\lib\mk.py
os.path.getatime()模块函数
功能:返回所指向的文件或者目录的最后存取时间戳【有参】
使用方法:os.path.getatime("文件路径")
格式如:a = os.path.getatime("H:/py/lib")
#!/usr/bin/env python # -*- coding:utf8 -*- import os import time a = os.path.getatime("H:/py/lib") #返回所指向的文件或者目录的最后存取时间戳 b = time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime(a)) #将时间戳转换成时间格式 print(b) #输出 # 2016-08-22 20:41:28
os.path.getmtime()模块函数
功能:返回所指向的文件或者目录的最后存取时间戳【有参】
使用方法:os.path.getmtime("文件路径")
格式如:a = os.path.getmtime("H:/py/lib")
#!/usr/bin/env python # -*- coding:utf8 -*- import os import time a = os.path.getmtime("H:/py/lib") #返回所指向的文件或者目录的最后修改时间戳 b = time.strftime("%Y-%m-%d %H:%M:%S",time.gmtime(a)) #将时间戳转换成时间格式 print(b) #输出 # 2016-08-22 20:41:28
os.stat().st_size检查一个文件的大小,返回字节
使用方法:os.stat(要检查大小的文件路径或文件名称).st_size
格式:os.stat("32.png").st_size
dx = os.stat("32.png").st_size #检测要发送文件的大小
os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径
os.chdir(
"dirname"
) 改变当前脚本工作目录;相当于shell下cd
os.curdir 返回当前目录: (
'.'
)
os.pardir 获取当前目录的父目录字符串名:(
'..'
)
os.makedirs(
'dir1/dir2'
) 可生成多层递归目录
os.removedirs(
'dirname1'
) 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
os.mkdir(
'dirname'
) 生成单级目录;相当于shell中mkdir dirname
os.rmdir(
'dirname'
) 删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
os.listdir(
'dirname'
) 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
os.remove() 删除一个文件
os.rename(
"oldname"
,
"new"
) 重命名文件
/
目录
os.stat(
'path/filename'
) 获取文件
/
目录信息
os.sep 操作系统特定的路径分隔符,win下为
"\\",Linux下为"
/
"
os.linesep 当前平台使用的行终止符,win下为
"\t\n"
,Linux下为
"\n"
os.pathsep 用于分割文件路径的字符串
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所指向的文件或者目录的最后修改时间