1.读取目录下的一个文件
2.将文件读取为bytes流
3.计算SHA-1
4.关闭文件,将文件重命名
5.继续1,直到目录下所有文件读取完毕
import os
from hashlib import sha1
# use SHA1 as filename
def rename_file(path):
file_list = os.listdir(path)
for file_name in file_list:
file_path = os.path.join(path, file_name) # "E:/Images/IMAGES_STORE/1.jpg"
file_suffix = "." + file_name.split(".")[-1] # ".jpg"
with open(file_path, "rb") as file:
file_size = os.path.getsize(file_path)
buffer = file.read(file_size)
sha = sha1()
sha.update(buffer)
hex = sha.hexdigest()
os.rename(file_path, os.path.join(path, hex + file_suffix)) # 关闭文件才能改名
if __name__ == '__main__':
path = "E:/Images/IMAGES_STORE"
rename_file(path)