我是Python新用户,正在寻求帮助。需要Python脚本来复制和版本化(重命名)现有文件。我尝试创建用于版本升级的脚本,但它只添加了001 + 1 = 2而不是v002。另外我正在寻找首先拆分文件名,然后在对版本号进行数学运算后重新组装。我期待有人能对此提供真正的帮助。任何人都可以创建并向我展示上面提到的简单代码吗?预先感谢。
import os
import shutil
filename = 'New_Text_v001.txt'
fileparts = filename.split('.')
filesegments = fileparts[0].split('_')
fileVersion = filesegments[-1]
thirdSeg = fileVersion[1:5]
versionNum = int(thirdSeg) + 1
print filesegments, raw_input(versionNum), fileparts[1]
答案 0 :(得分:0)
您可以使用f个字符串
如果您给我看一个文件名示例,我可以为您提供帮助
答案 1 :(得分:0)
此站点用于就您尝试过的问题寻求帮助。将来,我建议添加您自己的代码并向我们显示您遇到的困难,以便人们可以帮助您解决该问题,而不是让他们为您解决整个问题。我会给您一些代码片段,这些代码片段将对您有所帮助,但是您应该先在这些论坛上进行搜索,然后再提出可以通过一些先前研究解决的问题。
字符串操作
我建议阅读以下内容的字符串连接和字符串拼接:
https://docs.python.org/2/tutorial/introduction.html
文件重命名
如何重命名具有指定目录的文件:
dependencies
现在,您有了所需的知识,就应该亲自尝试解决问题。如果您还有其他问题,或者我错过了任何事情,请随时提出。最好的学习方法就是去做。
答案 2 :(得分:0)
import re
file_names = ["fish_modlUV_v002.ma","fish_modlUV_v001.ma","fish_modlUV_v103.ma","fish_modlUV_v041.ma"]
new_file_names = []
for s in file_names:
digits = re.search('\d\d\d',s)
start_num = digits.start()
end_num = digits.end()
strin_num= s[start_num:end_num]
num = int(strin_num)
num +=1
new_file_names.append(s.replace(strin_num,f'{num:03}'))
希望这会有所帮助:)