删除小数点操作.py 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. import os
  2. import re
  3. def rename_files(folder_path):
  4. # 遍历指定文件夹及其子文件夹
  5. for foldername, subfolders, filenames in os.walk(folder_path):
  6. for filename in filenames:
  7. # 构建完整的文件路径
  8. file_path = os.path.join(foldername, filename)
  9. # 获取文件名(不含路径)
  10. base_name = os.path.basename(file_path)
  11. # 使用正则表达式保留文件名中的小数点,删除开头的数字
  12. new_name = re.sub(r'^\d+', '', base_name, count=1)
  13. # 构建新的文件路径
  14. new_path = os.path.join(foldername, new_name)
  15. # 避免文件名冲突,添加后缀
  16. counter = 1
  17. while os.path.exists(new_path):
  18. # 文件名已存在,添加后缀
  19. new_name = re.sub(r'^\d+', '', base_name, count=1) + ('_' + str(counter) if counter > 1 else '')
  20. new_path = os.path.join(foldername, new_name)
  21. counter += 1
  22. # 重命名文件
  23. os.rename(file_path, new_path)
  24. print(f'Renamed: {file_path} -> {new_path}')
  25. # 指定要修改文件名的文件夹路径
  26. folder_path = '/Users/admin/Downloads/市文旅体局'
  27. # 调用函数
  28. rename_files(folder_path)
  29. # folder_path = '/Users/admin/Downloads/市文旅体局'