接上节课内容
但在前面判断文件类型的代码中,我们只使用了小写的文件后缀名去进行匹配。
这样的话,比如像“心动.MP3”这个文件就被分类到了“其他文件”。
那么该怎样对大写的后缀名 .MP3 等进行判断呢?
统一字符串 |
为了解决这个问题,我们可以对文件后缀名使用 lower() 函数。 |
sampleStr1 = "NATE".lower() sampleStr2 = "Drake".lower() print(sampleStr1) print(sampleStr2) |
|
对文件后缀名使用lower()函数,修改对文件分类的代码,使“心动.MP3”文件被正确分类。
学习了 lower() 函数后,我们现在把它应用到获取文件后缀名的代码中,将文件后缀名全部转换为小写。 |
# 使用import导入os模块 import os # 将阿文的下载文件夹路径 /Users/yequ/Downloads 赋值给变量downloadPath downloadPath = "/Users/yequ/Downloads" # 使用os.listdir()函数获取该路径下所有的文件(夹),并赋值给变量allItems allItems = os.listdir(downloadPath) # 使用for循环遍历所有文件(夹) for item in allItems: # 获取文件后缀名并使用lower()函数转换成小写 extension = os.path.splitext(item)[1].lower() if extension in [".jpg", ".jpeg", ".gif", ".png", ".bmp"]: print(f"{item} 图片文件") elif extension in [".avi", ".mp4", ".wmv", ".mov", ".flv"]: print(f"{item} 视频文件") elif extension in [".wav", ".mp3", ".mid", ".ape", ".flac"]: print(f"{item} 音频文件") elif extension in [".pdf"]: print(f"{item} PDF文件") elif extension in [".docx", ".doc"]: print(f"{item} Word文件") elif extension in [".xlsx", ".xls"]: print(f"{item} Excel文件") elif extension in [".pptx", ".ppt"]: print(f"{item} PPT文件") else: print(f"{item} 其他文件") |
|