OS模块

1. 获取当前目录

>>> import os
>>> os.getcwd()
'C:\\Users\\wangshijun'

  

2. 切换目录

>>> os.chdir(r'd:')
>>> os.getcwd()
'D:\\'

  

3. 递归创建目录

>>> os.makedirs(r"d:\a\b\c\d\e")

  

4. 递归删除目录,目录为空则会删除,用于清理空目录

>>> os.removedirs(r"d:\a\b\c\d\e")

  

5. 创建目录,只能在已经存在的路径下创建目录

>>> os.mkdir(r"d:\a\b")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
FileNotFoundError: [WinError 3] 系统找不到指定的路径。: 'd:\\a\\b'
>>> os.mkdir(r"d:\a")
>>> os.mkdir(r"d:\a\b")

  

6. 删除目录

>>> os.rmdir(r"d:\a")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
OSError: [WinError 145] 目录不是空的。: 'd:\\a'
>>> os.rmdir(r"d:\a\b")
>>> os.rmdir(r"d:\a")

  

7. 列出目录中的文件

>>> os.makedirs(r"d:\a\b\c\d\e")
>>> os.chdir(r"d:\a")
>>> os.listdir(".")
['b']
>>> os.listdir(r"d:\a\b")
['c']

  

8. 查看文件属性

>>> os.stat(r"d:\a\b")
os.stat_result(st_mode=16895, st_ino=2814749767195796, st_dev=543840957, st_nlink=1, st_uid=0, st_gid=0, st_size=0, st_atime=1502878514, st_mtime=1502878514, st_ctime=1502878514)

  

9. 分割符(windows和Linux的分隔符区别)

# windows
>>> os.sep
'\\'
>>> os.linesep
'\r\n'
>>> os.pathsep
';'

# Linux
>>> os.sep
'/'
>>> os.linesep
'\n'
>>> os.pathsep
':'

  

10. 查看操作系统类型

# Windows
>>> os.name
'nt'

# Linux
>>> os.name
'posix'

  

11. 执行操作系统命令

# Windows
>>> os.system("dir")
 驱动器 D 中的卷没有标签。
 卷的序列号是 206A-5ABD

 d:\a 的目录

2017/08/16  18:15    <DIR>          .
2017/08/16  18:15    <DIR>          ..
2017/08/16  18:15    <DIR>          b
               0 个文件              0 字节
               3 个目录 64,921,755,648 可用字节
0
>>> os.system("ipconfig")


# Linux
>>> os.system('df -h')
文件系统             容量  已用  可用 已用% 挂载点
devtmpfs              16G     0   16G    0% /dev
tmpfs                 16G     0   16G    0% /dev/shm
tmpfs                 16G  185M   16G    2% /run
tmpfs                 16G     0   16G    0% /sys/fs/cgroup
/dev/mapper/cl-root   44G   19G   26G   42% /
/dev/sda1           1014M  235M  780M   24% /boot

  

12. 路径操作(文件目录可以不存在)

>>> os.path.split(r"d:\a\b\c\d\11.txt")   #路径分割
('d:\\a\\b\\c\\d', '11.txt')
>>> os.path.dirname(r"d:\a\b\c.txt")      #取文件所在的目录
'd:\\a\\b'
>>> os.path.basename(r"d:\a\b\c.txt")     #取文件的名称
'c.txt'

  

13. 判断文件是否存在

>>> os.path.exists(r"d:\a\b\c.txt")
False
>>> os.path.exists(r"d:\a\b\c")
True

  

14. 判断一个路径是否是绝对路径

>>> os.path.isabs(r"d:\a\b\c")
True
>>> os.path.isabs(r"a\b\c")
False
>>> os.path.isabs(r"/a/b/c")
True

  

15. 判断一个对象是否一个文件或目录

>>> os.path.isdir(r"d:\a\b\c")
True
>>> os.path.isfile(r"d:\a\b\c")
False

  

16. 将多个路径组合返回

>>> os.path.join(r"d:",r"\a",r"c",r"b.txt")
'd:\\a\\c\\b.txt'

  

17. 获取文件或目录的存取、修改时间

>>> os.path.getatime(r"d:\a\b")    #获取最后存取时间
1502878514.5859802
>>> os.path.getmtime(r"d:\a\b")    #获取最后内容修改时间
1502878514.5859802
>>> os.path.getctime(r"d:\a\b")    #获取最后文件改变时间
1502878514.5854797

  

 

posted @ 2017-08-16 18:23  炉山假面目  阅读(140)  评论(0编辑  收藏  举报