📜  Python:检查目录是否为空

📅  最后修改于: 2022-05-13 01:54:39.717000             🧑  作者: Mango

Python:检查目录是否为空

Python是一种广泛使用的通用高级编程语言。它提供了许多功能,其中之一是检查目录是否为空。这可以通过使用os 模块来实现。 Python中的OS 模块提供了与操作系统交互的功能。 OS属于 Python 的标准实用程序模块。该模块提供了一种使用操作系统相关功能的可移植方式。 osos.path模块包含许多与文件系统交互的函数。

检查目录是否为空

使用os.listdir()方法检查目录是否为空。 os 模块的os.listdir()方法用于获取指定目录下所有文件和目录的列表。

示例 #1:如果os.listdir()返回的列表为空,则目录为空,否则为空。下面是实现。

# Python program to check whether
# the directory empty or not
  
  
import os
  
# path of the directory
path = "D:/Pycharm projects/GeeksforGeeks/Nikhil"
  
# Getting the list of directories
dir = os.listdir(path)
  
# Checking if the list is empty or not
if len(dir) == 0:
    print("Empty directory")
else:
    print("Not empty directory")

输出:

Empty directory

示例 #2:假设上面代码中指定的路径是文本文件的路径或者是无效路径,那么,在这种情况下,上面的代码将引发OSError 。为了克服这个错误,我们可以使用os.path.isfile()方法和os.path.exists()方法。下面是实现。

# Python program to check whether
# the directory is empty or not
  
  
import os
  
  
# Function to Check if the path specified
# specified is a valid directory
def isEmpty(path):
    if os.path.exists(path) and not os.path.isfile(path):
  
        # Checking if the directory is empty or not
        if not os.listdir(path):
            print("Empty directory")
        else:
            print("Not empty directory")
    else:
        print("The path is either for a file or not valid")
  
  
# path to a file
path = "D:/Pycharm projects/GeeksforGeeks/Nikhil/gfg.txt"
isEmpty(path)
print()
  
# valid path
path = "D:/Pycharm projects/GeeksforGeeks/Nikhil/"
isEmpty(path)

输出:

The path is either for a file or not valid

Not empty directory