首页 > 编程知识 正文

如何使用Python查看所有的文件

时间:2023-11-20 18:27:38 阅读:291883 作者:ZTCZ

Python是一种高级编程语言,可以用于多种用途,例如Web开发、机器学习和数据分析。在本文中,我们将介绍如何使用Python查看所有的文件。

一、os.walk()函数

Python中的os模块提供了许多有用的函数,其中最常用的函数之一是os.walk()。该函数可以递归地遍历给定目录下的所有子目录和文件,并返回一个三元组(root, dirs, files),其中root是当前目录的路径,dirs是当前目录中的子目录,files是当前目录中的文件。

import os

def print_files(start_dir):
    for root, dirs, files in os.walk(start_dir):
        for file in files:
            print(os.path.join(root, file))

上述代码展示了如何使用os.walk()函数打印出指定目录下的所有文件名。

二、glob.glob()函数

除了os.walk()函数,Python还提供了另一个有用的函数,即glob.glob()函数。该函数返回与给定模式匹配的所有文件名,可以使用通配符'*'来匹配任意字符。

import glob

def print_files(pattern):
    files = glob.glob(pattern)
    for file in files:
        print(file)

上述代码展示了如何使用glob.glob()函数打印出与给定模式匹配的所有文件名。

三、利用os.listdir()函数

如果只需要列出指定目录下的文件名而不需要递归地遍历子目录,可以使用os.listdir()函数。

import os

def print_files(path):
    files = os.listdir(path)
    for file in files:
        print(os.path.join(path, file))

上述代码展示了如何使用os.listdir()函数打印出指定目录下的所有文件名。

四、使用os.scandir()函数

Python 3.5引入了os.scandir()函数,它比os.listdir()函数更快且更可靠。相比于os.listdir()函数返回的仅仅是文件名列表,os.scandir()返回的是一个'DirEntry'对象列表,这个对象代表了文件和子目录,你可以通过调用它的方法来获取更多的属性,如文件大小、文件类型等。

import os

def print_files(path):
    with os.scandir(path) as it:
        for entry in it:
            if entry.is_file():
                print(entry.name)

上述代码展示了如何使用os.scandir()函数打印出指定目录下的所有文件名。

总结

本文介绍了使用Python查看所有的文件的四种方法,分别是os.walk()函数、glob.glob()函数、os.listdir()函数和os.scandir()函数。每种方法都有自己的特点,可以根据实际情况选择合适的方法。

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