学习笔记———IO编程——文件及文件夹操作总结

Posted lyu454978790

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学习笔记———IO编程——文件及文件夹操作总结相关的知识,希望对你有一定的参考价值。

Python的os和shutil模块包含很多操作文件和目录的函数。os可以执行简单的文件夹及文件操作,但有些函数在os.path中。可用help()和dir()查看其用法和属性。

shutil模块提供了大量文件和文件夹高级操作。

1、判断路径或文件总结

os.path.isabs(...)            #是否为绝对路径

os.path.exists(...)      #是否真实存在

os.path,isdir(...)             #判断是否是一个目录(windows--文件夹)

os.path.isfile(...)           #判断是否是一个文件

 

2、两个路径合为一个

os.path.join(part1,part2)      # 不要直接将字符串拼在一起

 

3、路径名、文件名分割总结

os.path.split(...)                 #分割目录和文件名,或目录与其下的文件夹名;自动将路径字符串最后一个文件或文件夹名与目录分割

os.path.splitdrive(...)         #分割盘符(windows系统)

os.path.splitext(...)            #分割文件和扩展名

 

 

4、工作目录及创建文件夹总结

os.getcwd()                     #获取当前工作目录

os.chdir(...)                   #改变工作目录   ‘.‘表示当前目录,‘..’表示上级目录

os.listdir(...)                #列出目录下的文件--以list的形式

os.mkdir(...)    #创建单个目录(文件夹) os.mkdir(‘test‘) --->  在当前工作目录中创建了名为test的文件夹

os.makedirs(...)    #创建多级目录   os.makedirs(‘test\\test_son‘)----->在当前目录的下级目录test中创建名为test_son的文件夹

#   Note:可以使用for...in循环,创建多个文件夹

# for i in range(1,5):

  dir_name = ‘test‘ + str(i)

  os.mkdir(dir_name)                                    # 执行完毕后,在当前工作目录中创建了test1\test2\test3\test4 四个文件夹

 

 

5、删除文件夹或文件总结

os.rmdir(...)             #删除空文件夹,必须为空文件夹

os.remove(...)                      #删除单一文件

shutil.rmtree(...)    删除文件夹及其下的所有文件,此时要先切换到其上级目录作为当前工作目录  shutil.rmtree(‘test‘)----->当前工作目录下的test文件夹及其下所有文件被删除

 

 

6、重命名文件夹或文件总结

os.rename(‘oldname‘,‘newname‘)

 

 

7、复制、移动文件夹或文件总结--------必须用shutil模块

shutil.copyfile(‘oldfile‘,‘newfile‘)         #复制文件(非文件夹),必须带扩展名

shutil.copytree(‘old‘,‘new‘)          #复制目录,且new必须不存在,old目录下的文件和文件夹也copy到new中了

shutil.copy(‘old,‘new‘) 

  -------- shutil.copy(‘oldfile’,‘newfile)          #Copy文件,要带扩展名,此时同shutil.copyfile(‘old‘,‘new‘)

  -------- shutil.copy(‘oldfile‘,‘folder‘)               #将文件oldfile(必须带扩展名)拷贝到文件夹folder中,folder必须存在;若不存在,则产生一个指令文件

shuitl.move(‘oldfile‘,‘folder‘)                            #将文件oldfile(必须带扩展名)移动到文件夹folder中

shutil.move(‘folder1‘,‘folder2‘)        #将文件夹folder1转移到folder2中     

 

以上是关于学习笔记———IO编程——文件及文件夹操作总结的主要内容,如果未能解决你的问题,请参考以下文章

APUE 学习笔记1: Unix文件IO

APUE 学习笔记1: Unix文件IO

Linux学习笔记之权限与命令之间的关系(重要)及文件与文件夹知识总结

Java File IO学习笔记

TLPI(liunx/unix系统编程手册)笔记 文件IO:通用的IO模型

协程学习笔记