博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
os & sys
阅读量:4678 次
发布时间:2019-06-09

本文共 6170 字,大约阅读时间需要 20 分钟。

一、os

os 模块提供了许多与操作系统交互的接口

os.getcwd()                 -> str      # 返回当前路径, 相当于pwdos.chdir("dirname")         -> None     # 切换目录, 相当于cdos.curdir                   -> str      # 返回当前目录, 相当于cd .os.pardir                   -> str      # 获取当前目录的父目录字符串名:('..')os.makedirs('dir1/dir2')    -> None     # 递归创建目录, 相当于mkdir -pos.removedirs('dirname1')   -> None     # 若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推os.mkdir(path)              -> None     # 创建目录, 相当于mkdiros.rmdir('dirname')         -> None     # 删除单级空目录,若目录不为空则无法删除,相当于rmdiros.listdir(path)            -> list     # 列出指定目录下的所有文件和子目录,包括隐藏文件os.remove(path)             -> None     # 删除一个文件, 相当于rmos.rename("oldname","new")  -> None     # 重命名文件 / 目录, 相当于mvos.stat('path/filename')    -> namedupdate # 获取文件/目录信息, 相当于statos.sep                      -> str      # 操作系统特定的路径分隔符,win下为"\\",Linux下为"/"os.linesep                  -> str      # 当前平台使用的行终止符,win下为"\t\n",Linux下为"\n"os.pathsep                  -> str      # 用于分割文件路径的字符串 (:)os.name                     -> str      # 当前使用平台。win->'nt'; Linux->'posix'os.system(command)          -> int      # 调用shell命令, 废弃os.environ                  -> dict     # 获取系统环境变量, 相当于envos.symlink(src, dst)        -> None     # 创建软连接, src是真实文件的绝对路径, dst是软连接文件的绝对路径os.path.abspath(path)       -> str      # 返回path规范化的绝对路径os.path.split(path)         -> tuple    # 将path分割成目录和文件名二元组返回, 相当于basename和dirnameos.path.dirname(path)       -> str      # 返回path的目录。其实就是os.path.split(path)的第一个元素os.path.basename(path)      -> str      # 返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素os.path.exists(path)        -> bool     # 如果path存在,返回True;如果path不存在,返回Falseos.path.isabs(path)         -> bool     # 如果path是绝对路径,返回Trueos.path.isfile(path)        -> bool     # 如果path是一个存在的文件,返回True。否则返回Falseos.path.isdir(path)         -> bool     # 如果path是一个存在的目录,则返回True。否则返回Falseos.path.join(path1[, path2[, ...]])   -> str  # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略(拼接)os.readlink(src, dst)       -> str      # 返回软连接文件的绝对路径os.path.getatime(path)      -> float    # 返回path所指向的文件或者目录的最后存取时间os.path.getmtime(path)      -> float    # 返回path所指向的文件或者目录的最后修改时间os.path.getsize(path)       -> int      # 获取文件的大小os.getloadavg()             -> tuple    # 返回系统平均1,5,15分钟负载os.cput_count()             -> number   # cpu的数量,仅python3支持

os.listdir(path) -> list_of_strings

>>> os.listdir('/var/tmp')              # 列出指定path下所有的文件, 包括隐藏文件['bash', 'python', 'pythonlearn', 'tmpbackup.tar.gz']

os.environ

>>> os.environ                          # 列出系统的所有的环境变量, 相当于env{'LESSOPEN': '||/usr/bin/lesspipe.sh %s', 'SSH_CLIENT': '192.168.127.1 63669 22', 'CVS_RSH': 'ssh', 'LOGNAME': 'root', 'USER': 'root', 'HOME': '/root', 'PATH': '/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mongodb/bin:/root/bin', 'EVENTLET_NO_GREENDNS': 'yes', 'LANG': 'en_US.UTF-8', 'TERM': 'xterm', 'SHELL': '/bin/bash', 'SHLVL': '1', 'G_BROKEN_FILENAMES': '1', 'HISTSIZE': '1000', '_': '/usr/local/bin/python', 'SSH_CONNECTION': '192.168.127.1 63669 192.168.127.210 22', 'PYTHONSTARTUP': '/root/.pythonstartup', 'SSH_TTY': '/dev/pts/0', 'HOSTNAME': 'python.weimin.com', 'HISTCONTROL': 'ignoredups', 'PWD': '/root', 'EXINIT': 'set ts=4 sw=4', 'MAIL': '/var/spool/mail/root', 'LS_COLORS': 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lz=01;31:*.xz=01;31:*.bz2=01;31:*.tbz=01;31:*.tbz2=01;31:*.bz=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.rar=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36:'}
>>> os.environ['HI'] = 'HELLO'          # 设置环境全局变量>>> os.environ['HI']'HELLO'

os.path.split(path)                                 

>>> os.path.split('/etc/passwd')          # 将path分割成目录、文件, 返回一个tuple. 相当于basename和dirname('/etc', 'passwd')>>> help(os.path.split)

os.path.dirname(path)

>>> os.path.dirname('/etc')               # 返回path上级目录'/'>>> os.path.dirname('/var/tmp')'/var'

 os.symlink(src, dst)                          

>>> os.symlink('/usr/local/bin/python2', '/tmp/python')   # 创建软连接

os.readlink(path)

>>> os.readlink('/tmp/python')                            # 返回软连接文件真实文件路径'/usr/local/bin/python2'

os.getloadavg()

>>> os.getloadavg()                                       # 1,5,15分钟平均负载(0.16, 0.25, 0.15)

os.path.abspath(path)

>>> os.path.abspath('.')'/root'

os.path.join(a, *p)

>>> os.path.join('/var','tmp','test')                     # 组合路径返回'/var/tmp/test'>>> os.path.join('/var','tmp')'/var/tmp'>>> os.path.join('/var',*('sfsfvarfs','tmp','abcde'))'/var/sfsfvarfs/tmp/abcde'

二、sys

sys.argv          # 命令行参数List,第一个元素是程序本身路径sys.exit(n)       # 退出程序,正常退出时exit(0)sys.version       # 获取Python解释程序的版本信息sys.maxint        # 最大的Int值sys.path          # 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值sys.platform      # 返回操作系统平台名称sys.stdin         # 输入相关sys.stdout        # 输出相关sys.stderror      # 错误相关sys.getrecursionlimit() # 获取递归的深度sys.setrecursionlimit(1000000) # 同样可以设置递归深度

其它方法

>>> sys.platform               # 系统平台'linux2'>>> sys.version_info           # python的版本,代号sys.version_info(major=2, minor=7, micro=11, releaselevel='final', serial=0) >>> sys.version'2.7.11 (default, Mar 29 2016, 23:35:44) \n[GCC 4.4.7 20120313 (Red Hat 4.4.7-16)]' >>> sys.stdout.write('Hello World!')Hello World!

转载于:https://www.cnblogs.com/huangweimin/p/5051607.html

你可能感兴趣的文章
WPF DataGrid 之数据绑定
查看>>
c语言之gdb调试。
查看>>
位反转的最佳算法
查看>>
常用面试问题
查看>>
第一个爬虫
查看>>
Java面试知识点之Java基础
查看>>
老外的前端面试题
查看>>
架构:新浪架构师谈微博架构
查看>>
SQL 语句速查
查看>>
女孩·有义务让男孩走向成熟,·男孩·有责任让女孩学着长大(精简版)
查看>>
discuz 删除指定条件的资讯
查看>>
Android上下文菜单ContextMenu
查看>>
JavaScript Number 对象 Javascript Array对象 Location 对象方法 String对象方法
查看>>
Python & Django 学习笔记
查看>>
python第四天练习题
查看>>
【bzoj4543】Hotel加强版(thr)
查看>>
没有标题(1)
查看>>
React-Native学习手册----搭建基于ios平台的开发环境
查看>>
Android手机 Fildder真机抓包
查看>>
[stm32] 中断
查看>>