Как проверить, является ли файл пустым в Python

PythonPythonBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом практическом занятии (лабораторной работе) вы научитесь проверять, является ли файл пустым на Python. Сначала вы создадите пустой файл с именем my_empty_file.txt с помощью команды touch в терминале. Затем вы проверите его создание и размер с помощью команд ls -l и stat.

Далее вы будете использовать функцию os.path.getsize() в Python для программного определения размера файла. Вы создадите скрипт Python с именем check_size.py и реализуете логику для проверки, является ли файл my_empty_file.txt пустым на основе его размера.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/FileHandlingGroup(["File Handling"]) python(("Python")) -.-> python/PythonStandardLibraryGroup(["Python Standard Library"]) python(("Python")) -.-> python/ModulesandPackagesGroup(["Modules and Packages"]) 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. Создание пустых файлов является фундаментальной операцией во многих задачах программирования и системного администрирования. Вы будете использовать команду touch, стандартную утилиту в Linux, для этого.

  1. Откройте терминал в WebIDE. Путь по умолчанию в терминале - ~/project.

  2. Чтобы создать пустой файл с именем my_empty_file.txt, введите следующую команду в терминале и нажмите Enter:

    touch my_empty_file.txt

    Эта команда создаст пустой файл с именем my_empty_file.txt в текущем каталоге (~/project).

  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()

На этом этапе вы научитесь использовать функцию os.path.getsize() в Python для определения размера файла. Это полезная функция для проверки, является ли файл пустым, или для других задач управления файлами.

  1. Откройте редактор кода в WebIDE.

  2. Создайте новый файл Python с именем check_size.py в каталоге ~/project.

  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 для записи строки в файл. В терминале введите следующую команду и нажмите Enter:

    echo "Hello, LabEx!" > my_empty_file.txt

    Эта команда запишет строку "Hello, LabEx!" в файл my_empty_file.txt, перезаписав любое предыдущее содержимое.

  2. Теперь прочитаем содержимое файла с помощью Python. Откройте редактор кода в WebIDE.

  3. Создайте новый файл Python с именем read_and_check.py в каталоге ~/project.

  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")

    Этот код открывает файл my_empty_file.txt в режиме чтения ("r"). Оператор 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. Сначала вы создали пустой файл с именем my_empty_file.txt с помощью команды touch в терминале и проверили его создание и размер (0 байт) с использованием команд ls -l и stat.

Затем вы начали изучать использование функции os.path.getsize() в Python для определения размера файла, создав файл check_size.py в WebIDE для дальнейшей реализации.