python处理文件、文件夹-小结

目录

1、获取路径
2、切换路径(指的是当前文件的执行路径)
3、拆分获取路径、文件名、文件后缀
4、获取文件属性
5、检查文件、文件夹
6、获取当前目录下的文件、文件夹
7、复制文件、文件夹
8、删除文件、文件夹
9、移动文件(目录)
10、创建文件夹、文件
11、重命名

=======================================================

正文

1、获取路径

(1)获取当前目录的路径: os.getcwd()

或者:获取当前路径:os.path.split(os.path.realpath(__file__))[0]              (强烈推荐)

(2)获取上级目录的路径:os.path.abspath('..')

(3)获取指定路径的上级目录。不需要由运行文件本身位置决定。

1)任意构造路径:获取上级目录

parentpath = os.path.abspath(r'D:\hhh\biancheng\workspace\userpy' + os.sep + '..')

2)存在构造路径:获取上级目录

parentpath = os.path.abspath( os.path.split(os.path.realpath(__file__))[0]  + os.sep + '..')      (强烈推荐)

 (4)获取文件绝对路径:

absolute_fix_path = os.path.dirname(os.path.abspath(__file__))

 

file_name = "./1.txt"

absolute_all_path = os.path.join(absolute_fix_path, file_name)

print(absolute_all_path)

 

2、切换路径(指的是当前文件的执行路径)

(1)转换目录 : os.chdir("path") 换路径 os.chdir("../") 切换到上一级目录

 

3、拆分获取路径、文件名、文件后缀

返回一个路径的目录名和文件名:os.path.split() eg os.path.split('/home/swaroop/byte/code/poem.txt') 结果:('/home/swaroop/byte/code', 'poem.txt')

分离扩展名:os.path.splitext()

获取路径名:os.path.dirname()

获取文件名:os.path.basename()

获取路径中的文件夹名称:

path1=r"/home/swaroop/byte/code//\\"
dir_scaned_name=os.path.split(path1.rstrip(r'/\\'))[1]
print(dir_scaned_name) # 输出 code

通过os.path.join(path, name)连接目录和文件名

 

4、获取文件属性

获取文件属性:os.stat(filename)

获取文件大小:os.path.getsize(filename)             单位:字节

或者:os.stat(filename).st_size

返回指定目录下的所有文件和目录名:os.listdir() 

 

5、检查文件、文件夹

(1)存在检查

检验文件、文件夹是否真地存:os.path.exists()

(2)类型+存在检查

1)检验给出的路径是否是一个文件:os.path.isfile()

2)检验给出的路径是否是一个目录:os.path.isdir()

3)判断是否是绝对路径:os.path.isabs()

 

6、获取当前目录下的文件、文件夹

(1)【标准库】glob
用于查找文件,【支持通配符】(* 和 ?)
代码示例——获取当前目录所有 txt 文件

import glob
for file in glob.glob("./*.txt") :
    print(file)

  

7、复制文件、文件夹

复制文件:
shutil.copyfile("oldfile","newfile") oldfile和newfile都只能是文件
shutil.copy("oldfile","newfile") oldfile只能是文件夹,newfile可以是文件,也可以是目标目录

复制文件夹:
shutil.copytree("olddir","newdir") olddir和newdir都只能是目录,且newdir必须不存在

8、删除文件、文件夹

(1)删除文件夹:删除多个目录(空目录、有内容的目录都可以删):

shutil.rmtree('b')     # 同时删除b、和b中的文件(夹)

(2)删除文件:删除一个文件:

os.remove()

(3)其他

删除一个目录(只能删除空目录):
os.rmdir()

删除多个目录:同时删除python、a
os.removedirs(r“c:\python\a”)

 

9、移动文件(目录)
shutil.move("oldpos","newpos")

 

10、创建文件夹、文件

创建多级目录:os.makedirs(r“c:\python\test”)

创建单个目录:os.mkdir(“test”)

 

11、重命名

os.rename("oldname","newname")       # 文件或目录都是使用这条命令

 

posted @ 2020-04-24 16:02  安迪9468  阅读(421)  评论(0编辑  收藏  举报