python对于系统目录、当前目录、以及文件夹和文件的操作

python的os模块提供了非常丰富的方法用来处理文件和目录。

1、获取当前工作目录:os.getcwd()

2、改变当前工作目录:os.chdir(path)  path为路径可以是绝对路径也可以是相对路径。

3、遍历获取指定目录下的文件夹和文件以及子文件夹子文件:os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

  • top -- 是你所要遍历的目录的地址, 返回的是一个三元组(root,dirs,files)。

    • root 所指的是当前正在遍历的这个文件夹的本身的地址
    • dirs 是一个 list ,内容是该文件夹中所有的目录的名字(不包括子目录)
    • files 同样是 list , 内容是该文件夹中所有的文件(不包括子目录)
  • topdown --可选,为 True,则优先遍历 top 目录,否则优先遍历 top 的子目录(默认为开启)。如果 topdown 参数为 True,walk 会遍历top文件夹,与top 文件夹中每一个子目录。

  • onerror -- 可选,需要一个 callable 对象,当 walk 需要异常时,会调用。

  • followlinks -- 可选,如果为 True,则会遍历目录下的快捷方式(linux 下是软连接 symbolic link )实际所指的目录(默认关闭),如果为 False,则优先遍历 top 的子目录。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

import os
for root, dirs, files in os.walk(".", topdown=False):
    for name in files:
        print(os.path.join(root, name))    #os.path.join (path1[,path2[,...]])   把目录和文件名合成一个路径
    for name in dirs:
        print(os.path.join(root, name))

4、获取指定目录下的文件夹和文件  os.listdir(path)     只获取当前目录,不遍历子目录

5、获取文件的属性 os.path 

 5.1、判断一个目录是文件夹还是文件:  os.path.isdir(path) #返回True 表示是文件夹 ; os.path.isfile(path) #返回True表示是文件

 5.2、判断文件夹或文件是否存在:os.path.exists(path) 

 

posted @ 2021-09-27 13:23  桃花落,闲池阁  阅读(905)  评论(0编辑  收藏  举报