前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python os模块详解

python os模块详解

作者头像
IT架构圈
发布2018-06-01 11:25:46
8080
发布2018-06-01 11:25:46
举报
文章被收录于专栏:IT架构圈IT架构圈IT架构圈

os模块提供对操作系统进行调用的接口

1、获取当前的路径

>>> import os
>>> os.getcwd()     //相当于Linux命令pwd
'/root'

2、切换目录

>>> os.chdir("/usr/local")        //相当于Linux命令cd
>>> os.getcwd()
'/usr/local'

3、递归的创建目录

>>> os.makedirs("/a/b/c")         //makedirs能达到递归创建目录的功能
>>> os.chdir("/a/b/c")
>>> os.getcwd()
'/a/b/c'
>>> os.mkdir("/a")          //mkdir不能递归创建,只能在现有的基础上创建目录

4、删除目录

>>> os.removedirs("/a/b/c")       //注意:如果目录为空,则删除;并递归到上一级目录,如果上一级目录还为空,也删除
>>> os.rmdir("/a/b/c")          //rmdir则只会删除c目录

5、列出某个目录的内容

>>> os.listdir("/tmp")          //括号中的参数支持使用"."或者"..",来表示当前目录和上级目录
['.ICE-unix', 'pulse-Fs462EvLc7Dh', 'keyring-uwyK0a', '.esd-0', '.X0-lock', 'pulse-jkPtSpm9pKFD', 'keyring-MWNb3a', 'orbit-gdm', 'virtual-root.28G7kT', '.X11-unix', 'keyring-vSKFBk', 'keyring-s0TXNr', 'virtual-root.T44xz0']

6、删除文件

>>> os.remove("/root/test.txt")   //括号中的参数为文件路径

7、重命名文件或目录

>>> os.rename("/a","/c")        //括号中参数为"旧的","新的"

8、获取文件或目录的信息

>>> os.stat("/root/test.py")          //默认打印全部属性
os.stat_result(st_mode=33188, st_ino=1198015, st_dev=64768, st_nlink=1, st_uid=0, st_gid=0, st_size=261, st_atime=1521601271, st_mtime=1521601271, st_ctime=1521601271)
>>> os.stat("/root/test.py").st_size    //也可以取其中的某个值
261

9、输出操作系统的路径分隔符,比如:windows为"\",Linux为"/"

>>> os.sep
'/'

10、输出操作系统的换行分隔符,比如:windows为"\r\n",Linux为"\n"

>>> os.linesep
'\n'

11、查看系统的环境变量

>>> os.environ  

内容过多,就不再复制

12、获取当前操作系统环境变量的分隔符,比如:windows为";",Linux为":"

>>> os.pathsep
':'

13、显示当前系统

>>> os.name
'posix'

14、执行操作系统的命令

>>> os.system("ls -l")
总用量 21840
-rw-------. 1 root root     1612 2月   7 17:21 anaconda-ks.cfg
-rw-r--r--. 1 root root    46478 2月   7 17:21 install.log
-rw-r--r--. 1 root root    10033 2月   7 17:19 install.log.syslog
-rw-r--r--. 1 root root 22256403 12月 23 2016 Python-3.6.0.tgz

15、把文件路径和文件做分割

>>> os.path.split("/a/b/c/a.txt")    //把一个文件的整体路径做分割
('/a/b/c', 'a.txt')

16、获取目录名

>>> os.path.dirname("/a/b/c/a.txt")
'/a/b/c'

17、获取文件名

>>> os.path.basename("/a/b/c/a.txt")
'a.txt'

18、判断路径是否存在,可以判断目录和文件

>>> os.path.exists("/b")
False
>>> os.path.exists("/c")
True
>>> os.path.exists("/etc/passwd")
True

19、判断路径是否是绝对路径

>>> os.path.isabs("/etc/passwd")
True
>>> os.path.isabs("passwd")
False

20、判断参数是否为文件

>>> os.path.isfile("/etc/passwd")
True
>>> os.path.isfile("/etc")
False

21、拼接路径

>>> os.path.join("/root","passwd","passwd.txt")
'/root/passwd/passwd.txt'

22、获取文件或目录的存取时间,返回时间戳

>>> os.path.getatime("/etc/passwd")
1521600541.5160062
>>> os.path.getatime("/etc")
1521531717.0806012

23、获取文件或目录的修改时间

>>> os.path.getmtime("/etc")
1521600007.5530176
>>> os.path.getmtime("/etc/passwd")
1517995284.6799996

24、返回文件的绝对路径

os.path.abspath(__file__)                             //返回文件的绝对路径
print(os.path.dirname(os.path.abspath(__file__)))    //返回文件的所在目录
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-03-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 编程坑太多 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档