python判断文件是否存在
python在操作文件前,检查文件是否存在也是一个良好的编程习惯。通常来说,有三种常见方式来判断文件夹或文件是否存在,分别是os模块,try语句和pathlib模块。
os模块
os模块中的os.path.exists(path)可以检测文件或文件夹是否存在,path为文件/文件夹的名字/绝对路径。返回结果为True/False
printos.path.exists("/untitled/chapter3.py")printos.path.exists("chapter3.py")
这种用法既能检测文件也能检测文件夹,这也带来问题,假如我想找一个命名为helloworld的文件,使用exists可能命中同名的helloworld文件夹。这时使用os.path.isdir()和os.path.isfile()可以加以区分。如果进一步想判断是否可以操作文件,可以使用os.access(path,model),model为操作模式,具体如下
if__name__=='__main__':
ifos.access("/untitled/chapter3.py",os.F_OK):
print"Filepathisexist."
ifos.access("/untitled/chapter3.py",os.R_OK):
print"Fileisaccessibletoread"
ifos.access("/untitled/chapter3.py",os.W_OK):
print"Fileisaccessibletowrite"
ifos.access("/untitled/chapter3.py",os.X_OK):
print"Fileisaccessibletoexecute"
try语句
对文件最简单的操作方法是直接使用open()方法,但是文件不存在,或发生权限问题时open方法会报错,所以配合try语句使用来捕捉一异常。try...open语法简单优雅,可读性强,而且不需要引入任何模块
if__name__=='__main__':
try:
f=open("/untitled/chapter3.py")
f.close()
exceptIOError:
print"Fileisnotaccessible."
pathlib模块
在python2中pathlib属于第三方模块,需要单独安装。但是python3中pathlib已经是内建模块了
pathlib用法简单,与open类似。首先使用pathlib创建对象,进而使用exists(),is_file()等方法
if__name__=='__main__':
path=pathlib.Path("chapter3.py")
printpath.exists()
printpath.is_file()
以上内容为大家介绍了python培训之判断文件是否存在,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

猜你喜欢LIKE
相关推荐HOT
更多>>
python函数中使用for循环
python函数中使用for循环1、在for循环中使用函数需要更长的执行时间,因为每次迭代都会调用该函数。2、如果for循环是在函数内部实现的,那么该...详情>>
2023-11-14 13:53:34
python3.1版本的特性有哪些
python3.1中的特性有哪些1、千位数格式化,可以在使用字符串格式化函数时直接完成。在格式化大数时,通常是每三位数放置逗号,使数字更易读(例...详情>>
2023-11-14 13:18:27
python__new__()和__init__()有什么区别?
在python中,__new__()不是一定要有,只有继承自object的类才有,该方法可以return父类(通过super(当前类名,cls).__new__())出来的实例,或者直...详情>>
2023-11-14 12:38:55
pythonwheel是什么
python的第一个主流打包格式是.egg文件,现在大家庭中又有了一个叫做Wheel(*.whl)的新成员。wheel“被设计成包含PEP376兼容安装(一种非常接近于...详情>>
2023-11-14 11:30:39热门推荐
pythonSymPy求极值
沸python归并排序和快速排序比较
热pythonpartition如何分割字符串
热pythonif-elif-else语句的使用注意
新python函数中使用for循环
python3.1版本的特性有哪些
python__new__()和__init__()有什么区别?
python作为小白该如何抉择python编辑器?
pythonwheel是什么
python如何定义一个函数
pythonpython是什么类型的语言
python怎么传参数
pythonshell是什么
python如何查看对象属性
技术干货






