Posted on 

文件操作

判断文件是否存在

在开始读写文件前,要先判断文件是否存在,以免抛出异常。

Python判断文件是否存在主要有三个方法:

  1. 使用os 模块
  2. 使用Try 语句
  3. 使用pathlib 模块

os模块

1
2
3
import os
os.path.exists("test_file.txt") //True
os.path.exists("test_dir") //True

可以看出,os.path.exists对于文件和文件夹的检测方法是一样的。如果需要避免可能出现的重名误判,则可以:

1
2
os.path.isfile("test_file.txt") //True
os.path.isfile("test_dir") //False

try

1
2
3
4
5
6
7
try:
f =open()
f.close()
except FileNotFoundError:
print "文件不存在"
except PermissionError:
print "拒绝访问"

或直接使用IOError (不推荐):

1
2
3
4
5
try:
f =open()
f.close()
except IOError:
print "打开文件失败"

pathlib模块

1
2
3
path = pathlib.Path("path/file")
path.exist() // 检查目录是否存在
path.is_file() // 检查文件是否存在

文件读写

打开文件: f = open('test.txt', 'r')

其中,标识符表示read,即只读,不可写。

如果要写入文件,则应该使用w 标识符。

操作完成后,关闭文件: f.close()