python基础之模块之os模块
os模块
os模块的作用:
os,语义为操作系统,所以肯定就是操作系统相关的功能了,可以处理文件和目录这些我们日常手动需要做的操作,就比如说:显示当前目录下所有文件/删除某个文件/获取文件大小……
另外,os模块不受平台限制,也就是说:当我们要在linux中显示当前路径时就要用到pwd命令,而Windows中cmd命令行下就要用到这个,额...我擦,我还真不知道,(甭管怎么着,肯定不是pwd),这时候我们使用python中os模块的os.path.abspath(name)功能,甭管是linux或者Windows都可以获取当前的绝对路径。
os模块的常用功能:
1 os.name #显示当前使用的平台
- >>> os.name
- 'nt' #这表示Windows
- >>> os.name
- 'posix' #这表示Linux
2 os.getcwd() #显示当前python脚本工作路径
- >>> os.getcwd()
- 'C:\\Users\\Capital-D\\PycharmProjects\\untitled' #使用pycharm
- >>> os.getcwd()
- '/root' #Linux平台在/root目录直接使用python3命令
3 os.listdir('dirname') #返回指定目录下的所有文件和目录名
- #相对于os.getcwd路径下的文件
- >>> os.listdir()
- ['.idea', 'test']
- >>> os.listdir()
- ['.bash_logout', 'Python-3.4.4', '.mysql_history', '.tcshrc', 'Python-3.4.4.tar.xz', '.bash_profile', '.lesshst', 'install.log.syslog', '.cshrc', '04.sql', 'anaconda-ks.cfg', 'test', '.viminfo', 'phpMyAdmin-4.4.15-all-languages.tar.bz2', '1test', '.bashrc', 'binlog.sql', 'back.sql', 'install.log', 'binlog4.sql', '.bash_history', 'backup.sql', 'text.py', '.rnd', 'test1']
4 os.remove('filename') #删除一个文件
- [root@slyoyo ~]# touch hahaha
- [root@slyoyo ~]# ls
- 04.sql back.sql binlog.sql install.log.syslog Python-3.4.4.tar.xz text.py
- 1test backup.sql hahaha phpMyAdmin-4.4.15-all-languages.tar.bz2 test
- anaconda-ks.cfg binlog4.sql install.log Python-3.4.4 test1
- #hahaha(粉色字体)存在
- [root@slyoyo ~]# python3
- Python 3.4.4 (default, Apr 5 2016, 04:23:19)
- [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux
- Type "help", "copyright", "credits" or "license" for more information.
- >>> import os
- >>> os.remove('hahaha')
- >>> exit()
- [root@slyoyo ~]# ls
- 04.sql anaconda-ks.cfg backup.sql binlog.sql install.log.syslog Python-3.4.4 test text.py
- 1test back.sql binlog4.sql install.log phpMyAdmin-4.4.15-all-languages.tar.bz2 Python-3.4.4.tar.xz test1
- #hahaha已被删
5 os.makedirs('dirname/dirname') #可生成多层递规目录
- [root@slyoyo ~]# ls
- 04.sql anaconda-ks.cfg backup.sql binlog.sql install.log.syslog Python-3.4.4 test text.py
- 1test back.sql binlog4.sql install.log phpMyAdmin-4.4.15-all-languages.tar.bz2 Python-3.4.4.tar.xz test1
- [root@slyoyo ~]# python3
- Python 3.4.4 (default, Apr 5 2016, 04:23:19)
- [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux
- Type "help", "copyright", "credits" or "license" for more information.
- >>> import os
- >>> os.makedirs('hahaha/linghuchong')
- >>> exit()
- [root@slyoyo ~]# ls
- 04.sql back.sql binlog.sql install.log.syslog Python-3.4.4.tar.xz text.py
- 1test backup.sql hahaha phpMyAdmin-4.4.15-all-languages.tar.bz2 test
- anaconda-ks.cfg binlog4.sql install.log Python-3.4.4 test1
- [root@slyoyo ~]# ls hahaha/
- linghuchong
- [root@slyoyo ~]# ls hahaha/linghuchong/
- [root@slyoyo ~]#
6 os.rmdir('dirname') #删除单级目录
- [root@slyoyo ~]# ls
- 04.sql back.sql binlog.sql install.log.syslog Python-3.4.4.tar.xz text.py
- 1test backup.sql hahaha phpMyAdmin-4.4.15-all-languages.tar.bz2 test
- anaconda-ks.cfg binlog4.sql install.log Python-3.4.4 test1
- [root@slyoyo ~]# ls hahaha/
- linghuchong
- [root@slyoyo ~]# ls hahaha/linghuchong/
- [root@slyoyo ~]# python3
- Python 3.4.4 (default, Apr 5 2016, 04:23:19)
- [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux
- Type "help", "copyright", "credits" or "license" for more information.
- >>> import os
- >>> os.rmdir('hahaha/linghuchong')
- >>> exit()
- [root@slyoyo ~]# ls hahaha/
- [root@slyoyo ~]#
7 os.rename("oldname","newname") #重命名文件
- >>> os.getcwd()
- '/root/hahaha'
- >>> os.listdir()
- ['test']
- >>> os.rename('test','test_new')
- >>> os.listdir()
- ['test_new']
8 os.system() #运行shell命令,注意:这里是打开一个新的shell,运行命令,当命令结束后,关闭shell
- >>> os.system('pwd')
- /root/hahaha
- 0
9 os.sep #显示当前平台下路径分隔符
- >>> os.sep
- '/' #linux
- >>> os.sep
- '\\' #windows
10 os.linesep #给出当前平台使用的行终止符
- >>> os.linesep
- '\n' #linux
- >>> os.linesep
- '\r\n' #windows
11 os.environ #获取系统环境变量
- os.environ
- environ({'USERPROFILE': 'C:\\Users\\Capital-D', 'PROCESSOR_ARCHITECTURE': 'x86', 'SESSIONNAME': 'Console', 'UGII_BASE_DIR': 'D:\\Program Files (x86)\\Siemens\\NX 8.0', 'COMMONPROGRAMW6432': 'C:\\Program Files\\Common Files', 'COMMONPROGRAMFILES(X86)': 'C:\\Program Files (x86)\\Common Files', 'MOZ_PLUGIN_PATH': 'C:\\Program Files (x86)\\Foxit Software\\Foxit Reader\\plugins\\', 'ALLUSERSPROFILE': 'C:\\ProgramData', 'PYTHONIOENCODING': 'UTF-8', 'NUMBER_OF_PROCESSORS': '', 'APPDATA': 'C:\\Users\\Capital-D\\AppData\\Roaming', 'TERM': 'emacs', 'TEMP': 'C:\\Users\\CAPITA~1\\AppData\\Local\\Temp', 'PROGRAMDATA': 'C:\\ProgramData', 'COMSPEC': 'C:\\windows\\system32\\cmd.exe', 'WINDIR': 'C:\\windows', 'PROCESSOR_IDENTIFIER': 'Intel64 Family 6 Model 58 Stepping 9, GenuineIntel', 'PATHEXT': '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC;.PY', 'PATH': 'C:\\ProgramData\\Oracle\\Java\\javapath;C:\\Program Files (x86)\\Common Files\\NetSarang;C:\\Program Files (x86)\\NVIDIA Corporation\\PhysX\\Common;C:\\Program Files (x86)\\Intel\\iCLS Client\\;C:\\Program Files\\Intel\\iCLS Client\\;C:\\windows\\system32;C:\\windows;C:\\windows\\System32\\Wbem;C:\\windows\\System32\\WindowsPowerShell\\v1.0\\;C:\\Program Files\\Intel\\Intel(R) Management Engine Components\\DAL;C:\\Program Files\\Intel\\Intel(R) Management Engine Components\\IPT;C:\\Program Files (x86)\\Intel\\Intel(R) Management Engine Components\\DAL;C:\\Program Files (x86)\\Intel\\Intel(R) Management Engine Components\\IPT', 'UGII_ROOT_DIR': 'D:\\Program Files (x86)\\Siemens\\NX 8.0\\UGII\\', 'COMPUTERNAME': 'IDEA-PC', 'USERDOMAIN': 'idea-PC', 'TMP': 'C:\\Users\\CAPITA~1\\AppData\\Local\\Temp', 'SYSTEMROOT': 'C:\\windows', 'PROCESSOR_REVISION': '3a09', 'FP_NO_HOST_CHECK': 'NO', 'PROGRAMFILES': 'C:\\Program Files (x86)', 'PYTHONDONTWRITEBYTECODE': '', 'LOCALAPPDATA': 'C:\\Users\\Capital-D\\AppData\\Local', 'PYTHONUNBUFFERED': '', 'LOGONSERVER': '\\\\IDEA-PC', 'UGII_LANG': 'simpl_chinese', 'SYSTEMDRIVE': 'C:', 'PUBLIC': 'C:\\Users\\Public', 'HOMEPATH': '\\Users\\Capital-D', 'PYTHONPATH': 'C:\\Program Files (x86)\\JetBrains\\PyCharm 5.0.2\\helpers\\pydev', 'USERNAME': 'Capital-D', 'UGS_LICENSE_SERVER': '28000@idea-pc', 'USERDOMAIN_ROAMINGPROFILE': 'idea-PC', 'PYCHARM_HOSTED': '', 'OS': 'Windows_NT', 'PROCESSOR_ARCHITEW6432': 'AMD64', 'PROGRAMFILES(X86)': 'C:\\Program Files (x86)', 'PROGRAMW6432': 'C:\\Program Files', 'PSMODULEPATH': 'C:\\windows\\system32\\WindowsPowerShell\\v1.0\\Modules\\', 'COMMONPROGRAMFILES': 'C:\\Program Files (x86)\\Common Files', 'IPYTHONENABLE': 'True', 'HOMEDRIVE': 'C:', 'CONFIGSETROOT': 'C:\\windows\\ConfigSetRoot', 'PROCESSOR_LEVEL': ''})
12 os.path.abspath(path) #显示当前绝对路径
- >>> os.path.abspath('test')
- 'C:\\Users\\Capital-D\\PycharmProjects\\untitled\\test'
13 os.path.dirname(path) #返回该路径的父目录
- >>> os.path.abspath('test')
- 'C:\\Users\\Capital-D\\PycharmProjects\\untitled\\test'
- >>> os.path.dirname(os.path.abspath('test'))
- 'C:\\Users\\Capital-D\\PycharmProjects\\untitled'
14 os.path.basename(path) #返回该路径的最后一个目录或者文件,如果path以/或\结尾,那么就会返回空值。
- >>> os.path.dirname(os.path.abspath('test'))
- 'C:\\Users\\Capital-D\\PycharmProjects\\untitled'
- >>> os.path.basename(os.path.dirname(os.path.abspath('test')))
- 'untitled'
15 os.path.isfile(path) #如果path是一个文件,则返回True
- [root@slyoyo ~]# ls
- 04.sql back.sql binlog.sql install.log.syslog Python-3.4.4.tar.xz text.py
- 1test backup.sql hahaha phpMyAdmin-4.4.15-all-languages.tar.bz2 test
- anaconda-ks.cfg binlog4.sql install.log Python-3.4.4 test1
- [root@slyoyo ~]# python3
- Python 3.4.4 (default, Apr 5 2016, 04:23:19)
- [GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux
- Type "help", "copyright", "credits" or "license" for more information.
- >>> import os
- >>> os.path.isfile('test')
- True
16 os.path.isdir(path) #如果path是一个目录,则返回True
- >>> os.path.isdir('hahaha')
- True
17 os.stat() #获取文件或者目录信息
- >>> os.stat('test')
- os.stat_result(st_mode=33188, st_ino=137149, st_dev=2050, st_nlink=1, st_uid=0, st_gid=0, st_size=85, st_atime=1462373193, st_mtime=1462373186, st_ctime=1462373186)
18 os.path.split(path) #将path分割成路径名和文件名。(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在)
- >>> os.path.split('/root/test')
- ('/root', 'test')
19 os.path.join(path,name) #连接目录与文件名或目录 结果为path/name
- >>> os.path.join('/root/haha','test')
- '/root/haha/test'
python基础之模块之os模块的更多相关文章
- Python基础之time、os模块
1.时间模块 1)模块 python安装好之后,会有一些默认模块,我们称之为标准库,标准库中的模块python自带,无需安装. 除了标准库,还有一个第三方库,可以通过pip来安装,不同的库有不同的功能 ...
- python 常用模块(一): os模块,序列化模块(json模块 pickle模块 )
1.os模块 2.序列化模块:(1)json模块 和 pickle模块 一.os模块 os.path.abspath: (1)把路径中不符合规范的/改成操作系统默认的格式 import os path ...
- Python(七)之OS模块
文件系统功能:os模块 python编程时,经常和文件.目录打交道,这是就离不了os模块.os模块包含普遍的操作系统功能,与具体的平台无关.以下列举常用的命令: 目录: os.mkdir('/tmp/ ...
- Python入门-模块2(random模块、os模块)
>>> random.randomrange(1,10) #返回1-10之间的一个随机数,不包括10 >>> random.randint(1,10) #返回1-1 ...
- Python的路径操作(os模块与pathlib模块)
Python的路径操作(os模块与pathlib模块) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.os.path模块(Python 3.4版本之前推荐使用该模块) #!/u ...
- (转)python常用模块(模块和包的解释,time模块,sys模块,random模块,os模块,json和pickle序列化模块)
阅读目录 1.1.1导入模块 1.1.2__name__ 1.1模块 什么是模块: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代 ...
- day5模块学习 -- os模块学习
python基础之模块之os模块 os模块 os模块的作用: os,语义为操作系统,所以肯定就是操作系统相关的功能了,可以处理文件和目录这些我们日常手动需要做的操作,就比如说:显示当前目录下所有文件/ ...
- 常用模块:os模块,logging模块等
一 os模块 那么作为一个常用模块,os模块是与操作系统交互的一个模块. 那么os模块中我们常用的一般有以下几种: os.listdir('dirname') 以列表的形式列出指定目录下的所有文 ...
- 时间模块之datatime模块、os模块、sys模块、json模块、json模块实操
目录 一.模块的绝对导入和相对导入 二.包的概念 三.编程思想的转变 四.软件开发目录规范 五.常见的内置模块 一.时间模块之datatime模块 1.datetime.datetime.today( ...
- 模块之-os模块
模块之-os模块 >>> import os >>> os.getcwd() #获取当前工作目录 'C:\\Users\\Administrator' >&g ...
随机推荐
- Javascript的"预编译"思考
今天工作需要,搜索下JS面试题,看到一个题目,大约是这样的 <script> var x = 1, y = z = 0; function add(n) { n = n+1; } y = ...
- java多线程的常用方法(以及注意事项)
/* * 线程的常用方法 * 1.start(); * 2.run(); * 3.sleep(int millsecond); * 4.isAlive(); -->判断线程是否还在运行 * 5. ...
- Valid Palindrome [LeetCode]
Given a string, determine if it is a palindrome, considering only alphanumeric characters and ignori ...
- MVC中处理Json和JS中处理Json对象
MVC中处理Json和JS中处理Json对象 ASP.NET MVC 很好的封装了Json,本文介绍MVC中处理Json和JS中处理Json对象,并提供详细的示例代码供参考. MVC中已经很好的封装了 ...
- Git删除远程分支
查看 git branch -a 删除远程分支 git branch -r -d origin/branch-name //只是删除的本地对该远程分支的track git push origin : ...
- ios基础篇(六)——UITextView的常用方法及技巧
上篇说到了UITextField,我们先来说说UITextView和UITextField的不同: UITextView支持多行输入; UITextFiled只支持单行; UITextView没有pl ...
- 8月10日 微软MVP巡讲 Windows 开发专题活动
1.签到 2.准备工作 3.讲师正在准备 4.讲师发言 5.本次活动进行中 合影
- 推荐10款非常优秀的 HTML5 开发工具
HTML5 发展如火如荼,随着各大浏览器对 HTML5 技术支持的不断完善以及 HTML5 技术的不断成熟,未来 HTML5 必将改变我们创建 Web 应用程序的方式.今天这篇文章向大家推荐10款 ...
- ORACLE 一致性读原理记录
什么是一致性读? 一致性读指的是在从查询那一刻起,中间的变化不予理会. 举例说明 比如我有两个帐户A,B. A 有1000块,B有1000快.我查询的时候查询速度比较慢.中间A转500到B账户. 已经 ...
- 【vmware vcp 5.1】安装及配置及笔记散记
ESXi的几个命令技巧: ------------------------------------------------- alt-f1: 进入console alt-f2: 返回DCUI alt- ...