一、使用os.listdir方法判斷
Python中可以使用內置的os.listdir方法獲取文件夾中的文件列表,通過判斷列表的長度是否為0,即可判斷該文件夾是否為空。下面是代碼示例:
import os
def is_empty_folder(path):
return len(os.listdir(path)) == 0
以上代碼中,is_empty_folder方法接收一個參數,代表要判斷的文件夾路徑,通過調用os.listdir方法獲取文件夾中的文件列表,並判斷其長度是否為0,最終返回True或False來表示該文件夾是否為空。
二、使用glob.glob方法判斷
除了使用os.listdir方法外,還可以使用glob.glob方法來判斷文件夾是否為空。該方法可以通過文件通配符匹配來獲取指定文件夾下的所有文件,如果不存在任何文件,則表示該文件夾為空。下面是代碼示例:
import glob
def is_empty_folder(path):
return not glob.glob(path + '/*')
以上代碼中,is_empty_folder方法接收一個參數,代表要判斷的文件夾路徑,通過調用glob.glob方法獲取指定文件夾下的所有文件,並通過判斷返回的結果列表是否為空來判斷該文件夾是否為空。
三、使用os.scandir方法判斷
Python3.5及以上版本中引入了os.scandir方法,該方法比os.listdir方法更高效,並且返回的是一個迭代器,可以在處理大量文件時節省內存。下面是代碼示例:
import os
def is_empty_folder(path):
with os.scandir(path) as dir_contents:
return not any(dir_contents)
以上代碼中,is_empty_folder方法接收一個參數,代表要判斷的文件夾路徑,通過使用with語句打開文件夾,並通過調用os.scandir方法返回一個迭代器,然後利用any方法判斷迭代器是否為空來判斷該文件夾是否為空。
四、使用os.path.isdir方法判斷
除了使用上述方法外,還可以使用os.path.isdir方法判斷文件夾是否存在,如果存在則繼續判斷文件夾中是否有文件即可。以下是代碼示例:
import os
def is_empty_folder(path):
if os.path.isdir(path):
return not os.listdir(path)
else:
return False
以上代碼中,is_empty_folder方法接收一個參數,代表要判斷的文件夾路徑,通過使用os.path.isdir方法判斷文件夾是否存在,如果存在,則使用os.listdir方法獲取文件列表,並判斷該列表是否為空,最終返回True或False表示該文件夾是否為空。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/293297.html