注册 登录
  • 欢迎访问"运维那点事",推荐使用Google浏览器访问,可以扫码关注本站的"微信公众号"。
  • 如果您觉得本站对你有帮助,那么可以扫码捐助以帮助本站更好地发展。

Python系统操作模块os与sys使用

Python模块 彭东稳 294次浏览 已收录 0个评论

在Linux上如果我们要操作文件、目录,可以在命令行下面输入操作系统提供的各种命令来完成,比如dir、cp等命令。

在Python程序中执行这些目录和文件的操作可以使用python提供的os或sys模块(注意os模块的某些函数是跟操作系统相关的如os.uname()是提供给Linux系统的)。其实操作系统提供的命令只是简单地调用了操作系统提供的接口函数,Python内置的os或sys模块也可以直接调用操作系统提供的接口函数。

os模块负责程序与操作系统的交互,提供了访问操作系统底层的接口;sys模块负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python的运行时环境。

os模块

os.name:查看系统名称,如果是posix表示系统是Linux、unix或mac,如果是nt就是wd。

os.uname():打印系统信息。

os.system(‘command’):执行系统命令。

os.environ:打印全部变量值以字典的方式显示。

os.getenv(‘PATH’):打印单个变量值。

os.chdir(‘/etc’):改变工作目录。

os.mkdir(‘/tmp/dir’):创建目录。

os.listdir(‘.’):列出当前目录。

os.mkdirs(‘/tmp/dir’):创建多级目录。

os.chroot(‘/’):设置当前进程的根目录。

os.getcwd():获取当前目录。

os.redir(‘/tmp’):删除目录。

os.removedirs():删除多级目录。

os.rename(‘/old’,’/new’):重命名文件或目录。

os.stat():返回文件状态信息,比如大小、权限、属主属组等。

os.mkfifa():创建命名管道。

os.mknod():创建设备文件。

os.remove():删除文件。

os.unlink():删除链接文件。

os.symlink():创建符号链接。

os.utime():更新文件的时间戳。

os.tmpfile():创建并打开一个新的临时文件。

os.walk():目录树生成器,相当于tree命令。

os.access():验证文件是否有此权限。

os.chmod():修改文件权限。

os.chown():修改文件属主属组。

os.umask():设置默认权限的遮罩码。

os.open():打开文件。

os.read():读取文件。

os.write():写文件。

os.nkdev():创建设备并指定主次设备号。

os.major():指定设备获取主设备号。

os.minor():指定设备获取次设备号。

os.path.basename():取路径基名。

os.path.dirname():路径目录名。

os.path.join():整合文件名。

os.path.split():返回dirname(),basename()元祖。

os.path.splitext():返回文件名,扩展名元祖。

os.path.getatime():获取文件访问时间。

os.path.getctime():获取文件改变时间。

os.path.getmtime():获取文件修改时间。

os.path.getsize():获取文件大小。

os.path.exists():判断指定文件是否存在。

os.path.isabs():判断指定的路径是否为绝对路径。

os.path.isdir():是否为目录。

os.path.isfile():是否为文件。

os.path.link():是否为符号链接。

os.path.ismoutn():是否为挂载点。

os.path.samefile():判断两个路径是否指向了同一个文件。

shutil模块

复制文件的函数居然在os模块中不存在!原因是复制文件并非由操作系统提供的系统调用。理论上讲,我们通过上一节的读写文件可以完成文件复制,只不过要多写很多代码。shutil模块提供了copyfile()的函数,你还可以在shutil模块中找到很多实用函数,它们可以看做是os模块的补充。

sys模块

sys.argv[0]:命令行参数List,第一个元素是程序本身路径。

sys.modules.keys():返回所有已经导入的模块列表。

sys.exc_info():获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息。

sys.exit(n):退出程序,正常退出时exit(0)。

sys.hexversion:获取Python解释程序的版本值,16进制格式如:0x020403F0。

sys.version:获取Python解释程序的版本信息。

sys.maxint:最大的Int值。

sys.maxunicode:最大的Unicode值。

sys.modules:返回系统导入的模块字段,key是模块名,value是模块。

sys.path:返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值。

sys.platform:返回操作系统平台名称。

sys.stdout:标准输出。

sys.stdin:标准输入。

sys.stderr:错误输出。

sys.exc_clear():用来清除当前线程所出现的当前的或最近的错误信息。

sys.exec_prefix:返回平台独立的python文件安装的位置。

sys.byteorder:本地字节规则的指示器,big-endian平台的值是’big’,little-endian平台的值是’little’。

sys.copyright:记录python版权相关的东西。

sys.api_version:解释器的C的API版本。


如果您觉得本站对你有帮助,那么可以支付宝扫码捐助以帮助本站更好地发展,在此谢过。
喜欢 (0)or分享 (0)
关于作者:

您必须 登录 才能发表评论!