我有一些在Python脚本中处理的文件。最新的要求是,我需要进入文件将要放置的目录,并按照添加日期时间戳和项目名称到文件名开头的方式重命名所有文件,同时保留原始名称。
例如,foo.txt 变成 2011-12-28_projectname_foo.txt
构建新标签很容易,只是重命名过程让我感到困惑。
例如,foo.txt 变成 2011-12-28_projectname_foo.txt
构建新标签很容易,只是重命名过程让我感到困惑。
import os
dir_name = os.path.realpath('ur directory')
cnt=0 for root, dirs, files in os.walk(dir_name, topdown=False):
for file in files:
cnt=cnt+1
file_name = os.path.splitext(file)[0]#file name no ext
extension = os.path.splitext(file)[1]
dir_name = os.path.basename(root)
try:
os.rename(root+"/"+file,root+"/"+dir_name+extension)
except FileExistsError:
os.rename(root+"/"+file,root+""+dir_name+str(cnt)+extension)
如果一个文件夹中有更多的文件,并且我们需要为这些文件提供增量值,那么就需要考虑一下。
我知道这是我之前发布的旧帖子,但考虑到它已经被浏览了很多次,我想我会发表我解决这个问题所做的事情。
import os
sv_name="(whatever it's named)"
today=datetime.date.today()
survey=sv_name.replace(" ","_")
date=str(today).replace(" ","_")
namedate=survey+str(date)
[os.rename(f,str(namedate+"_"+f)) for f in os.listdir('.') if not f.startswith('.')]