import imghdr
import os
root=["D:\long\Desktop"]
for path in root:
for dirPath, dirNames, fileNames in os.walk(path):
for file in fileNames:
pic_file=os.path.join(dirPath,file)
img = imghdr.what(pic_file)
#print(os.path.splitext(pic_file)[1])
if os.path.splitext(pic_file)[1].lstrip('.') != img:
#print(img,pic_file)
#print(os.path.splitext(pic_file)[0])
name=os.path.splitext(pic_file)[0]+'.'+img
print(name)
os.rename(pic_file,name)
有幾個問題
1.我所用的imghdr似乎只能辨認圖片的副檔名
它把我的txt當錯誤的檔案
有能辨識其他副檔名是否正確的包嗎
2.我用其他程式辨識的是jpg但是imghdr的辨識卻是jpeg
3.遇到非圖片的會錯誤比如txt
不過有打算用try所以算是小問題