首页 > 编程知识 正文

Python操作文件模块用法介绍

时间:2023-11-21 12:52:03 阅读:287365 作者:PQXH

本文将对Python操作文件的模块进行详细阐述,包括常用的os、shutil、glob、fnmatch、pathlib等模块。

一、os模块

os模块提供了一种方便的访问操作系统功能的方式,可以处理文件和目录等操作。

1、获取文件属性

import os
info = os.stat('test.txt')
print(info)

通过使用os.stat可以获取文件的多种属性,如文件大小、创建时间、修改时间等。

2、创建目录

import os
if not os.path.exists('/root/test'):
    os.mkdir('/root/test')

如果/root/test目录不存在,则通过os.mkdir函数创建一个新目录。

二、shutil模块

shutil模块是Python中处理文件和目录的高级操作模块,可以对文件进行复制、移动、删除等操作。

1、复制文件

import shutil
shutil.copyfile('test.txt', 'test1.txt')

可以使用shutil.copyfile函数实现将test.txt文件复制到test1.txt文件。

2、移动文件

import shutil
shutil.move('test.txt', 'test2.txt')

可以使用shutil.move函数将test.txt文件移动到test2.txt文件。

三、glob模块

glob模块提供了一种通过通配符匹配文件路径的方法。

1、获取所有文件

import glob
files = glob.glob('*')
print(files)

可以使用glob.glob函数获取当前目录下所有文件。

2、获取特定文件

import glob
files = glob.glob('*.txt')
print(files)

可以使用glob.glob函数获取当前目录下所有txt文件。

四、fnmatch模块

fnmatch模块提供了一种通过多个通配符模式匹配文件路径的方法。

1、获取所有文件

import fnmatch
import os
files = [f for f in os.listdir('.') if os.path.isfile(f) and fnmatch.fnmatch(f, '*')]
print(files)

可以使用fnmatch.fnmatch函数获取当前目录下所有文件。

2、获取特定文件

import fnmatch
import os
files = [f for f in os.listdir('.') if os.path.isfile(f) and fnmatch.fnmatch(f, '*.txt')]
print(files)

可以使用fnmatch.fnmatch函数获取当前目录下所有txt文件。

五、pathlib模块

pathlib模块提供了一种面向对象的文件路径处理方法,可以方便地进行文件路径的创建、拼接等操作。

1、创建目录

import pathlib
pathlib.Path('/root/test').mkdir(parents=True, exist_ok=True)

如果/root/test目录不存在,则通过pathlib.Path.mkdir函数创建一个新目录。

2、文件路径拼接

import pathlib
path = pathlib.Path('/root') / 'test' / 'test.txt'
print(path)

可以使用pathlib.Path进行路径的拼接,可以避免一些繁琐的字符串拼接操作。

六、总结

以上就是Python操作文件的模块的详细介绍,其中os、shutil、glob、fnmatch、pathlib都是常用的文件操作模块,可以方便地处理文件和目录等操作。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。