OS 模块
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OS 模块相关的知识,希望对你有一定的参考价值。
os.getcwd()
获取当前工作目录,即当前Python脚本工作的目录路径
>> os.getcwd()
‘E:python‘
os.chdir(path)
改变当前脚本工作目录
>> os.chdir("e:")
>> os.getcwd()
‘e:‘
os.curdir 没有参数
返回当前目录”.”
>> os.curdir
‘.‘
os.pardir 没有参数
返回当前目录的父目录‘..‘
>> os.pardir
‘..‘
os.name 没有参数
获取当前操作系统的类型(其中 ‘nt’ 是 windows,’posix’ 是
linux 或者 unix)
>> os.name
‘nt‘
os.mkdir(path [, mode=0777])
创建单级目录,参数mode表示生成的目录的权限,默认是超级权限,也就是0777
Linux下有有效
如果创建目录不指定具体路径,在当前工作目录下创建
>> os.mkdir("e:python-hhq")#在e盘下生成python-hhq目录
>> os.listdir("e:")
[‘$RECYCLE.BIN‘, ‘360Downloads‘, ‘360xc7xfdxb6xafxb4xf3xcaxa6xc4xbfxc2
kDownload‘, ‘bookmarks-2018-05-24f.json‘, ‘bookmarks_2018_5_24.html‘, ‘err.txt‘, ‘
xt‘, ‘python‘, ‘python-hhq‘, ‘StormMedia‘,
os.makedirs(path [, mode=0777])
可生成多层递归目录,父目录如果不存在,递归生成。
参数mode表示生成的目录的权限,默认是超级权限,也就是0777
>> os.makedirs("e:pythonhhq")
在e盘python目录面新建hhq目录,如果python不存在的,创建python目录
os.removedirs(path)
若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依次类推
>> os.removedirs("e:pythonpython-2a")
os.rmdir(path)
删除单级空目录,若目录不为空则无法删除
>> os.rmdir("e:pythonhhq")
os.listdir(path)
列出指定目录下的所有文件和子目录,包括隐藏文件或目录,并以列表形式
返回。
>> os.listdir("e:python")
[‘222.txt‘, ‘3.jpg‘, ‘hu.txt‘, ‘modul.py‘, ‘modul.pyc‘, ‘new.txt‘, ‘nine.py‘, ‘pyt
, ‘reverse.txt‘, ‘ten.py‘]
os.remove(filepath)
删除指定的文件,只能删除文件
>> os.remove("e:python222.txt")
os.rename(oldname,newname)
重命名文件或目录
>> os.rename("e:pythonhu.txt","e:hu1.txt")
>> os.rename("e:python ew.txt","e:python ew-1.txt")
>> os.rename("e:pythonpython-1","e:pythonpython1-1")
os.utime(path[, (atime, mtime)])
修改文件的时间属性,设置文件的access and modified time为给定的时间,
如果未指定atime和mtime参数,修改的时间将会是当前的时间
>> os.utime("e:pythonhu.txt",(1234567,10236547))
os.tmpfile()
已“w+b”的模式创建并打开一个临时文件
import os
file = os.tmpfile()
file.write("hi1
")
file.write("hi2
")
file.write("hi3
")
file.seek(0)
for i in file:
print i
print file
file.close()
执行结果:
hi1
hi2
hi3
<open file ‘<tmpfile>‘, mode ‘w+b‘ at 0x00000000026C8540>
os.sep
输出操作系统的路径分割符
>> os.sep
‘‘
os.pathsep
输出用于分割文件路径的字符串。
>> os.pathsep
‘;‘
os.linesep
输出当前平台使用的行终止符,win下为“ ”,Linux下为“ ”,Mac使用‘ ‘
>> os.linesep
‘ ‘
os.environ
获取系统的环境变量,返回一个字典
>> os.environ
{‘TMP‘: ‘C:UsershhqAppDataLocalTemp‘, ‘COMPUTERNAME‘: ‘HHQ-PC‘, ‘USERDOMAIN‘: ‘hhq-PC‘, ‘PSMODULEPATH‘: ‘C:Windowssystem32WindowsPowerShellv1.0Modules‘, ‘COMMONPROGRAMFILES‘: ‘C:
Program FilesCommon Files‘, ‘PROCESSOR_IDENTIFIER‘: ‘Intel64 Family 6 Model 60 Stepping 3, Genui
neIntel‘, ‘PROGRAMFILES‘: ‘C:Program Files‘, ‘PROCESSOR_REVISION‘: ‘3c03‘, ‘SYSTEMROOT‘: ‘C:Windows‘, ‘PATH‘: ‘d:ProgramDataAnaconda2;d:ProgramDataAnaconda2Librarymingw-w64in;d:ProgramDataAnaconda2Libraryusrin;d:ProgramDataAnaconda2Libraryin;d:ProgramDataAnaconda2Scripts;C:Windowssystem32;C:Windows;C:WindowsSystem32Wbem;C:WindowsSystem32WindowsPowerShellv1.0;C:Program FilesLenovoFingerprint Manager Pro;D:Python27‘, ‘PROGRAMFILES(X86)‘: ‘C:Program Files (x86)‘, ‘WINDOWS_TRACING_FLAGS‘: ‘3‘, ‘TEMP‘: ‘C:UsershhqAppDataLocalTemp‘, ‘COMMONPROGRAMFILES(X86)‘: ‘C:Program Files (x86)Common Files‘, ‘PROCESSOR_ARCHITECTURE‘: ‘AMD64‘, ‘ALLUSERSPROFILE‘: ‘C:ProgramData‘, ‘LOCALAPPDATA‘: ‘C:UsershhqAppDataLocal‘, ‘HOMEPATH‘: ‘Usershhq‘, ‘PROGRAMW6432‘: ‘C:Program Files‘, ‘USERNAME‘: ‘hhq‘, ‘LOGONSERVER‘: ‘\HHQ-PC‘, ‘PROMPT‘: ‘$P$G‘, ‘SESSIONNAME‘: ‘Console‘, ‘PROGRAMDATA‘: ‘C:ProgramData‘, ‘PATHEXT‘: .COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC‘, ‘FP_NO_HOST_CHECK‘: ‘NO‘, ‘WINDIR‘: ‘C:Windows‘, ‘WINDOWS_TRACING_LOGFILE‘: ‘C:BVTBinTestsinstallpackagecsilogfile.log
‘, ‘HOMEDRIVE‘: ‘C:‘, ‘SYSTEMDRIVE‘: ‘C:‘, ‘COMSPEC‘: ‘C:Windowssystem32cmd.exe‘, ‘NUMBER_OF_PROCESSORS‘: ‘8‘, ‘APPDATA‘: ‘C:UsershhqAppDataRoaming‘, ‘PROCESSOR_LEVEL‘: ‘6‘, ‘COMMONPROGR
AMW6432‘: ‘C:Program FilesCommon Files‘, ‘OS‘: ‘Windows_NT‘, ‘PUBLIC‘: ‘C:UsersPublic‘, ‘USERPROFILE‘: ‘C:Usershhq‘}
os.system(command)
执行系统命令
>> os.system("dir")
>> os.system("dir e:")
os.access(path, mode)
输出文件权限模式
W写,R读,X可执行,输出True,False。
#encoding=utf-8
import os
print os.access(r‘e:python1.txt‘, os.W_OK)
print os.access(r‘e:python1.tx‘, os.R_OK)
print os.access(r‘e:python1.tx‘, os.X_OK)
os.chmod(path, mode)
linux下修改文件的权限。
>> os.chmod("1.txt",777)
>> os.chmod("1.txt",1)
>> os.chmod("1.txt",111)
os.popen(command [, mode=‘r‘ [, bufsize]])
运行shell命令,并返回一个文件对象。然后通过操作文件的方法去操作这个
文件对象。
>> dirList = os.popen("dir e:python")
>> content = dirList.read()
>> print content
驱动器 E 中的卷是 文档
卷的序列号是 0697-BA86
e:python 的目录
2018/05/30 15:39 <DIR> .
2018/05/30 15:39 <DIR> ..
2018/05/25 14:35 0 3.jpg
2018/05/30 16:25 10 hu.txt
2018/05/29 15:39 18 modul.py
2018/05/29 15:39 129 modul.pyc
2018/05/29 14:57 837 new-1.txt
2018/05/30 09:18 350 nine.py
2018/05/30 15:15 <DIR> python-2
2018/05/28 17:12 <DIR> python1-1
2018/05/24 17:08 32 reverse.txt
2018/05/30 14:46 173 ten.py
8 个文件 1,549 字节
以上是关于OS 模块的主要内容,如果未能解决你的问题,请参考以下文章