如何在 Python 中检查文件是否为空

PythonPythonBeginner
立即练习

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

在这个实验中,你将学习如何在 Python 中检查文件是否为空。首先,你将使用终端中的 touch 命令创建一个名为 my_empty_file.txt 的空文件。然后,你将使用 ls -lstat 命令验证文件的创建和大小。

接下来,你将使用 Python 中的 os.path.getsize() 函数以编程方式确定文件的大小。你将创建一个名为 check_size.py 的 Python 脚本,并实现根据 my_empty_file.txt 的大小检查其是否为空的逻辑。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) python(("Python")) -.-> python/FileHandlingGroup(["File Handling"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python/ModulesandPackagesGroup -.-> python/importing_modules("Importing Modules") python/FileHandlingGroup -.-> python/file_opening_closing("Opening and Closing Files") python/FileHandlingGroup -.-> python/file_reading_writing("Reading and Writing Files") python/FileHandlingGroup -.-> python/file_operations("File Operations") python/PythonStandardLibraryGroup -.-> python/os_system("Operating System and System") subgraph Lab Skills python/importing_modules -.-> lab-559512{{"如何在 Python 中检查文件是否为空"}} python/file_opening_closing -.-> lab-559512{{"如何在 Python 中检查文件是否为空"}} python/file_reading_writing -.-> lab-559512{{"如何在 Python 中检查文件是否为空"}} python/file_operations -.-> lab-559512{{"如何在 Python 中检查文件是否为空"}} python/os_system -.-> lab-559512{{"如何在 Python 中检查文件是否为空"}} end

定义一个空文件

在这一步中,你将学习如何在 LabEx 环境中使用终端创建一个空文件。创建空文件是许多编程和系统管理任务中的基本操作。你将使用 Linux 中的标准实用工具 touch 命令来完成此操作。

  1. 在 WebIDE 中打开终端。终端的默认路径是 ~/project

  2. 要创建一个名为 my_empty_file.txt 的空文件,请在终端中输入以下命令并按回车键:

    touch my_empty_file.txt

    此命令将在你当前的目录(~/project)中创建一个名为 my_empty_file.txt 的空文件。

  3. 要验证文件是否已创建,你可以使用 ls 命令:

    ls -l my_empty_file.txt

    你应该会看到类似以下的输出:

    -rw-r--r-- 1 labex labex 0 Oct 26 14:35 my_empty_file.txt

    输出中的 0 表示该文件为空(其大小为 0 字节)。

    如果你没有看到列出的文件,请确保你位于 ~/project 目录中,并且命令输入正确。

  4. 另外,你可以直接使用 stat 命令检查文件大小:

    stat my_empty_file.txt

    输出将包含文件大小:

    File: my_empty_file.txt
    Size: 0               Blocks: 0          IO Block: 4096   regular empty file
    Device: ...

    同样,大小为 0 确认该文件为空。

使用 os.path.getsize() 检查文件大小

在这一步中,你将学习如何使用 Python 中的 os.path.getsize() 函数来确定文件的大小。这是一个用于检查文件是否为空或进行其他文件管理任务的实用函数。

  1. 打开 WebIDE 的代码编辑器。

  2. ~/project 目录下创建一个名为 check_size.py 的新 Python 文件。

  3. 将以下代码添加到 check_size.py 文件中:

    import os
    
    file_path = "my_empty_file.txt"
    
    file_size = os.path.getsize(file_path)
    
    print(f"The size of {file_path} is: {file_size} bytes")

    这段代码首先导入了 os 模块,该模块提供了与操作系统进行交互的函数。然后,它定义了 file_path 变量,其值为你在上一步中创建的文件的名称(my_empty_file.txt)。os.path.getsize() 函数用于获取文件的大小,并将结果存储在 file_size 变量中。最后,代码将文件大小打印到控制台。

  4. 保存 check_size.py 文件。

  5. 从终端运行 Python 脚本:

    python check_size.py

    你应该会看到以下输出:

    The size of my_empty_file.txt is: 0 bytes

    这证实了文件 my_empty_file.txt 确实为空。

读取内容并检查长度

在这一步中,你将学习如何向文件 my_empty_file.txt 写入一些内容,使用 Python 读取该内容,然后检查内容的长度。这将让你对 Python 中的文件读写操作有一个基本的了解。

  1. 首先,让我们向 my_empty_file.txt 文件添加一些内容。你可以使用 echo 命令将一个字符串写入文件。在终端中输入以下命令并按回车键:

    echo "Hello, LabEx!" > my_empty_file.txt

    此命令会将字符串 "Hello, LabEx!" 写入 my_empty_file.txt 文件,并覆盖之前的任何内容。

  2. 现在,让我们使用 Python 读取文件的内容。打开 WebIDE 的代码编辑器。

  3. ~/project 目录下创建一个名为 read_and_check.py 的新 Python 文件。

  4. 将以下代码添加到 read_and_check.py 文件中:

    file_path = "my_empty_file.txt"
    
    with open(file_path, "r") as file:
        content = file.read()
    
    content_length = len(content)
    
    print(f"The content of {file_path} is: {content}")
    print(f"The length of the content is: {content_length} characters")

    这段代码以只读模式 ("r") 打开 my_empty_file.txt 文件。with open(...) 语句确保文件在使用后能被正确关闭。file.read() 函数将文件的全部内容读取到 content 变量中。然后,使用 len() 函数获取内容的长度(字符数),并将结果存储在 content_length 变量中。最后,代码将内容及其长度打印到控制台。

  5. 保存 read_and_check.py 文件。

  6. 从终端运行 Python 脚本:

    python read_and_check.py

    你应该会看到以下输出:

    The content of my_empty_file.txt is: Hello, LabEx!
    
    The length of the content is: 14 characters

    这证实了文件包含字符串 "Hello, LabEx!",并且该字符串的长度为 14 个字符(包括空格和感叹号)。

总结

在本次实验中,你学习了如何使用 Python 检查文件是否为空。首先,你在终端中使用 touch 命令创建了一个名为 my_empty_file.txt 的空文件,并使用 ls -lstat 命令验证了文件的创建和大小(0 字节)。

接下来,你开始探索如何使用 Python 中的 os.path.getsize() 函数来确定文件大小,并在 WebIDE 中设置了一个 check_size.py 文件以进行进一步的实现。