Python判断文件、目录是否存在以及如何创建(多层)目录
2023-12-03 20:29:37
- 前言
Python中存在许多有用的模块,可以帮助我们更轻松地处理文件和目录。在本篇文章中,我们将介绍如何使用Python来判断文件和目录是否存在,以及如何创建(多层)目录。
- os模块
在Python中,我们可以使用os模块来处理文件和目录。os模块提供了一些非常有用的函数,可以帮助我们判断文件和目录是否存在,以及如何创建(多层)目录。
(1) 判断文件是否存在
我们可以使用os.path.exists()函数来判断一个文件是否存在。该函数接受一个文件路径作为参数,如果文件存在,则返回True,否则返回False。
import os
# 判断文件是否存在
file_path = 'test.txt'
if os.path.exists(file_path):
print('File exists')
else:
print('File does not exist')
(2) 判断文件夹是否存在
我们可以使用os.path.isdir()函数来判断一个文件夹是否存在。该函数接受一个文件夹路径作为参数,如果文件夹存在,则返回True,否则返回False。
import os
# 判断文件夹是否存在
dir_path = 'test_dir'
if os.path.isdir(dir_path):
print('Directory exists')
else:
print('Directory does not exist')
(3) 其他
os模块还提供了一些其他的函数,可以帮助我们处理文件和目录,例如:
- os.path.join():将多个路径组合成一个路径
- os.path.split():将路径拆分为目录和文件名
- os.path.getsize():获取文件的大小
- os.path.getmtime():获取文件的修改时间
(4) 创建多层目录
我们可以使用os.makedirs()函数来创建多层目录。该函数接受一个目录路径作为参数,如果目录不存在,则创建它。
import os
# 创建多层目录
dir_path = 'test_dir/sub_dir/sub_sub_dir'
os.makedirs(dir_path)
(5) 创建单层目录
如果我们只需要创建一个单层目录,我们可以使用os.mkdir()函数。该函数接受一个目录路径作为参数,如果目录不存在,则创建它。
import os
# 创建单层目录
dir_path = 'test_dir'
os.mkdir(dir_path)
(6) 判断文件是否可以读写
我们可以使用os.access()函数来判断一个文件是否可以读写。该函数接受一个文件路径和一个模式作为参数,如果文件可以读写,则返回True,否则返回False。
import os
# 判断文件是否可以读写
file_path = 'test.txt'
if os.access(file_path, os.R_OK | os.W_OK):
print('File is readable and writable')
else:
print('File is not readable and writable')
- try语句
在Python中,我们可以使用try语句来处理异常。异常是指程序在运行过程中遇到的错误。当异常发生时,程序会抛出异常信息,我们可以使用try语句来捕获异常信息,并进行相应的处理。
try:
# 代码块
except Exception as e:
# 异常处理代码块
- pathlib
pathlib是Python中的一个模块,它提供了许多方便的方法来处理文件和目录。pathlib模块比os模块更面向对象,它提供了更简洁、更易用的API。
from pathlib import Path
# 判断文件是否存在
file_path = Path('test.txt')
if file_path.exists():
print('File exists')
else:
print('File does not exist')
Pathlib模块还提供了许多其他的方法,可以帮助我们处理文件和目录,例如:
- Path.joinpath():将多个路径组合成一个路径
- Path.parent:获取父目录
- Path.name:获取文件名
- Path.suffix:获取文件后缀
- Path.touch():创建文件