Python如何按固定长度拆分文件名并完成重命名操作?
Python 拆分固定长度文件名并重命名
首先,利用Python字符串的切片特性,可以直接按固定长度拆分48字符的file_name:
# 拆分文件名成指定片段 part1 = file_name[:10] # 前10个字符 part2 = file_name[10:30] # 接下来的20个字符(索引10到29,共20个) part3 = file_name[30:46] # 再接下来的16个字符(索引30到45,共16个) part4 = file_name[46:] # 最后2个字符(索引46到47,共2个)
结合你的重命名需求(比如示例中用part2部分内容 + part4生成新文件名),完整代码需要注意拼接文件完整路径(避免工作目录问题):
import os folder = "你的文件夹路径" # 替换为实际文件夹路径 for file in os.listdir(folder): # 拆分文件名和扩展名 file_name, file_ext = os.path.splitext(file) # 跳过不符合长度要求的文件,防止切片出错 if len(file_name) != 48: continue # 拆分文件名片段 part1 = file_name[:10] part2 = file_name[10:30] part3 = file_name[30:46] part4 = file_name[46:] # 按示例规则生成新文件名:取part2前18位 + part4 + 扩展名 new_file_name = f"{part2[:18]}{part4}{file_ext}" # 拼接完整路径 old_path = os.path.join(folder, file) new_path = os.path.join(folder, new_file_name) # 执行重命名 os.rename(old_path, new_path)
如果你的实际需求是其他片段组合(比如直接用part2+part4),只需修改new_file_name的拼接逻辑即可。
内容的提问来源于stack exchange,提问作者Prado
相关产品推荐
相关产品推荐

