一、什么是Python os模块?
Python中的os模块是一个函数库,其提供了与操作系统相关联的函数,这些函数可以让你执行文件、目录和进程操作,以及处理文件路径。在使用Python编写程序时,os模块经常被用于在不同操作系统上处理文件系统路径和文件I/O操作中。
比如,在Linux中路径是以 /开始,而在Windows中,路径是以盘符开始的,如C:\
# 引入os模块 import os # 获取当前工作路径 path = os.getcwd() print(path)
运行以上代码可以输出当前工作目录的路径,如:/home/xxx/test/
在特定的路径中,我们经常需要遍历文件夹的所有文件并进行操作,下面我们详细说明一下Python os模块如何遍历文件夹、读取文件信息等,快速读取文件列表。
二、遍历文件夹
遍历文件夹是指遍历某一文件夹下的所有文件夹及文件,并对每一个文件进行一定的操作,如获取文件名、修改文件、删除文件等。我们可以使用os模块中的listdir、walk、glob等函数进行遍历。
1、使用os.listdir()
os.listdir()用于返回指定文件夹包含的文件或文件夹的名字的列表。使用该方法返回文件夹下的所有文件列表:
# 获取指定文件夹下的文件列表 import os folder_path = "/home/xxx/test/" file_list = os.listdir(folder_path) print(file_list)
运行以上代码可以输出指定文件夹下的所有文件列表。
2、使用os.walk()
os.walk()会生成目录树下的每一个目录及文件名。它首先产生当前目录下的文件名,然后使用os.path.isdir()函数判断是否为目录,如果是目录,则进入该目录,执行上述操作,直到当前目录全部完成。
使用该方法返回文件夹下的所有文件列表:
# 获取指定文件夹下的文件列表 import os folder_path = "/home/xxx/test/" for root, dirs, files in os.walk(folder_path): for file in files: print(os.path.join(root, file))
运行以上代码可以输出指定文件夹下的所有文件列表。
三、读取文件信息
在获取了文件列表之后,我们需要读取每个文件的信息,如文件大小、创建时间、修改时间等,下面我们通过Python os模块的示例来演示如何读取文件的一些基本信息。
1、获取文件大小
使用os.path.getsize(path)方法可以获取文件的大小,返回的是字节数。
# 获取文件大小 import os file_path = "test.txt" size = os.path.getsize(file_path) print("文件大小为:", size, "字节")
输出结果为:
文件大小为: 56 字节
2、获取文件创建时间
使用os.path.getctime(path)方法可以获取文件的创建时间,返回一个时间戳。
# 获取文件创建时间 import os import time file_path = "test.txt" ctime = os.path.getctime(file_path) print("文件创建时间为:", time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(ctime)))
使用time.localtime()方法将时间戳转换为格式化的日期时间字符串。
输出结果为:
文件创建时间为: 2021-07-28 11:47:58
3、获取文件修改时间
使用os.path.getmtime(path)方法可以获取文件的修改时间,返回一个时间戳。
# 获取文件修改时间 import os import time file_path = "test.txt" mtime = os.path.getmtime(file_path) print("文件修改时间为:", time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(mtime)))
使用time.localtime()方法将时间戳转换为格式化的日期时间字符串。
输出结果为:
文件修改时间为: 2021-07-28 14:27:23
四、小结
以上就是本文对使用Python os模块操作目录,快速读取文件列表的详细介绍,我们通过讲解os模块中的几个重要方法,如listdir、walk、getsize、getctime和getmtime,以及详细介绍了如何遍历文件夹、读取文件信息等操作。