python判断文件或文件夹是否存在、创建文件夹
1、判断文件或文件夹是否存在
import os
#返回值是个布尔类型的
os.path.exists("G:/软件/文件测试/test.py")
经常用到的(如果文件夹不存在,则创建该文件夹)
if not os.path.exists(save_path_dir):
os.makedirs(save_path_dir)
2、判断所给路径是文件还是文件夹
import os
#返回值是个布尔类型的
os.path.isfile("G:/软件/文件测试/test.py")
os.path.isdir("G:/软件/文件测试/test.py")
上面的代码分别输出:
True
False
3、创建文件夹
import os
os.makedirs("G:/软件/文件测试")
4、获取当前.py文件的路径
import os
temp_path = os.getcwd()
print(temp_path)
运行的文件为:“G:\软件\文件测试\test.py”
上面的代码输出:
G:\软件\文件测试
5、获取指定目录下所有的文件和文件夹
import os
# 返回值为list类型,是目录下的所有文件及文件夹的名字
os.listdir(path)
6、复制文件
import shutil
shutil.copyfile(src,des)
shutil.copy(src,des)
shutil.copytree(src,des)
解释上面的代码
(1)shutil.copyfile(src,des)
src为源文件(被复制的文件),des为目标文件(要复制到该文件路径下),两个文件的名字可以不一样
(2)shutil.copy(src,des)中
src为源文件(被复制的文件),des为目标文件(要复制到该文件路径下), src只能是文件,des可以为文件也可以是文件夹
<1> 当des为文件时等同于shutil.copyfile(),
<2> 当des为文件夹时,表示将src文件复制到des文件夹下
(3)shutil.copytree(src,des)
src为源文件夹,des为目标文件夹,该方法将整个src中的文件全部按照目录结构复制到des中
注:(3)shutil.copytree(src,des),使用这个函数复制后的文件并没有修改文件的创建日期、修改日期、访问日期,如果你需要将日期也修改,请访问这篇文章:
下面还有一些不是特别常用的操作
下面这段参考了这个帖子:
删除一个文件:os.remove(path)
删除多个目录:os.removedirs(path)
判断是否是绝对路径:os.path.isabs()
返回一个路径的目录名和文件名:os.path.split() #返回值为list,第一个元素为目录,第二个元素为文件名
分离扩展名:os.path.splitext()
获取路径名:os.path.dirname()
获取文件名:os.path.basename()
运行shell命令: os.system()
读取和设置环境变量:os.getenv() 与os.putenv()
给出当前平台使用的行终止符:os.linesep Windows使用’\r\n’,Linux使用’\n’而Mac使用’\r’
指示你正在使用的平台:os.name 对于Windows,它是’nt’,而对于Linux/Unix用户,它是’posix’
重命名:os.rename(old, new)
创建单个目录:os.mkdir(“test”)
获取文件属性:os.stat(file)
修改文件权限与时间戳:os.chmod(file)
终止当前进程:os.exit()
获取文件大小:os.path.getsize(filename)
移动文件(目录):shutil.move(“oldpos”,“newpos”)
删除目录:os.rmdir(“dir”)只能删除空目录
shutil.rmtree(“dir”) 空目录、有内容的目录都可以删
转换目录:os.chdir(“path”) 换路径