Рубрики

Проверьте, содержит ли каталог файл, используя python

Выяснить, является ли каталог пустым или нет в Python, можно с помощью listdir() библиотеки os . Модуль ОС в Python предоставляет функции для взаимодействия с операционной системой. Этот модуль предоставляет портативный способ использования функциональных возможностей, зависящих от операционной системы.

Syntax: os.listdir(<directory path>)

Returns: A list of files present in the directory, empty list if the directory is empty

Теперь, вызвав listdir() , мы можем получить список всех файлов, присутствующих в каталоге. Чтобы проверить пустоту каталога, мы должны проверить пустоту возвращаемого списка. У нас есть много способов сделать это, давайте проверим их один за другим.

  1. Сравнивая возвращенный список с жестко закодированным пустым списком
    Пустой список можно записать как [] . Таким образом, мы можем сравнить равенство возвращаемого списка с [] .

    # Программа Python для проверки
    # если каталог содержит файл

      

      

    import os

      
    # путь к каталогу

    directoryPath = "D:/Pycharm projects/GeeksforGeeks/Nikhil"

      
    # Сравнение возвращенного списка с пустым списком

    if os.listdir(directoryPath) == []:

            print("No files found in the directory.")

        else:

            print("Some files found in the directory.")

    Выход:

    Some files found in the directory.
    
  2. Сравнивая длину возвращаемого списка с 0
    Мы можем получить длину списка, используя метод Python len() . Если длина возвращаемого списка равна нулю, то каталог пуст, иначе нет.

    # Python программа для проверки
    # каталог содержит файл

      

      

    import os

      
    # путь к каталогу

    directoryPath = "D:/Pycharm projects/GeeksforGeeks/Nikhil"

      
    # Проверка длины списка

    if len(os.listdir(directoryPath)) == 0:

            print("No files found in the directory.")

        else:

            print("Some files found in the directory.")

    Выход:

    Some files found in the directory.
    
  3. Сравнивая логическое значение списка
    В приведенном выше методе мы использовали явное сравнение длины списка. Теперь мы идем с более Pythonic пути с использованием проверки истинности значения. Пустой список оценивается как ложный в Python.

    # Python программа для проверки
    # каталог пуст

      

      

    import os

      
    # путь к каталогу

    directoryPath = "D:/Pycharm projects/GeeksforGeeks/Nikhil"

      
    # Проверка логического значения списка

    if not os.listdir(directoryPath):

            print("No files found in the directory.")

        else:

            print("Some files found in the directory.")

    Выход:

    Some files found in the directory.
    

Полный исходный код:

# Python программа для проверки
# каталог пуст

  

import os

  

  
# Функция для проверки, если каталог
# содержит файл или нет

def isEmpty(directoryPath):

  

    # Проверка, существует ли каталог или нет

    if os.path.exists(directoryPath):

  

        # Проверка, является ли каталог пустым или нет

        if len(os.listdir(directoryPath)) == 0:

            return "No files found in the directory."

        else:

            return "Some files found in the directory."

    else:

        return  "Directory does not exist !"

  
# Код водителя

  
# Действительный каталог

directoryPath = "D:/Pycharm projects/GeeksforGeeks/Nikhil"

print("Valid path:", isEmpty(directoryPath))

  
# Недействительным каталог

directoryPath = "D:/Pycharm projects/GeeksforGeeks/Nikhil/GeeksforGeeks"

print("Invalid path:", isEmpty(directoryPath))

Выход:

Valid path: Some files found in the directory.
Invalid path: Directory does not exist !

Рекомендуемые посты:

Проверьте, содержит ли каталог файл, используя python

0.00 (0%) 0 votes