python实现将文件名批量命名为四位数or五位数
作者:sinat_21791203
这篇文章主要介绍了python实现将文件名批量命名为四位数or五位数问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
将文件名批量命名为四位数or五位数
for i in range(99):
change_i = str(i).zfill(4)
print(change_i)
"""输出为:
0000
0001
0002
0003
...
0098
"""
for i in range(99):
change_i = str(i).zfill(5)
print(change_i)
"""输出为:
00000
00001
00002
00003
...
00098
"""问题来源
本来想使用sorted(os.listdir(parh))按文件名顺序读取文件的,但是由于命名不没有统一,所以读出来没有按照预期来

接下来将文件名的数字部分统一命名为四位数的
import os
path = "/data/cta/deal-with-dataset-b-v1/dicom_hessian"
for file in os.listdir(path):
num = file.split(".")[0].split("_")[-1]
filename_change = "dicom_hessian_" + num.zfill(4) + ".jpg"
os.rename(os.path.join(path, file), os.path.join(path, filename_change))
至此问题解决~
python文件批量重命名为数字
代码:
#效果:把旧的名字清理掉,统一换成000000,递增加1
import os
path=r'C:\Nora\04_files\code'
filename_list=os.listdir(path)
a=1
for filename in filename_list:
used_name=filename
print(used_name)
new_name=str(a).zfill(6)+'.txt'#文件名长度对齐为6位,通过在前面补0
os.rename(os.path.join(path,used_name),os.path.join(path,new_name))
a+=1
print("新文件名:")
print(new_name) #是一个字符串集合
print("\n")
'''
zfill函数功能:
为字符串定义长度,如不满足,缺少的部分y右侧会用0填补
zfill函数用法:
newstr = string.zfill(width)
参数:
width新字符串希望的宽度
zfill函数注意事项:
与字符串的字符无关
如果定义长度小于当前字符串长度,则不发生变化
'''
#后面可以调用 script_for_file_rename_prefix.py脚本,加英文前缀,比如:chapter1效果:

总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
