Python3 - 测试文件是否存在

问题

测试文件是否存在

解决方案

使用 os.path 模块来测试一个文件或目录是否存在。比如:

import os

print(os.path.exists('/Users/xz/test'))
True

print(os.path.exists('/Users/xz/test/cookbook'))
False

还可以测试文件的类型,如果测试文件不存在时,结果会返回False。示例:

# 是否是目录
print(os.path.isdir('/Users/xz/test'))
True

# 是否是文件
print(os.path.isfile('/Users/xz/test/1.txt'))
True

# 是否是链接(象征性)
print(os.path.islink('/anaconda3/bin/python'))
True

还可以获取文件的元数据,比如文件大小、修改日期等。示例:

# 获取文件大小
print(os.path.getsize('/Users/xz/test'))
224

# 获取文件最后一次修改时间
import arrow as ar
dt = os.path.getctime('/Users/xz/test')
print(ar.get(dt).format("YYYY-MM-DD HH:mm:ss"))
2018-12-22 11:15:45

讨论

使用 os.path 进行文件测试很简单。 在写这些脚本时,可能唯一需要注意的就是你需要考虑文件权限的问题,特别是在获取元数据时候。

你可能感兴趣的:(Python3 - 测试文件是否存在)