如何解决仅使用 python 重命名特定子文件夹中的文件
我有一个包含多个文件夹的路径,每个文件夹以“P”开头并以一个单独的数字结尾(“P001”-“P104”)。这些文件夹中的每一个都有两个子文件夹“subfolder1”和“subfolder2”,它们都包含“file_1.nii”和“file_2.nii”。我只想在子文件夹1中将“file_1.nii”重命名为“new_name.nii”,而不是在子文件夹2中。
此代码适用于重命名所有子文件夹中的文件:
import os
mainpath = 'M:/path'
def replace(folder_path,old,new):
for path,subdirs,files in os.walk(folder_path):
for name in files:
if(old.lower() in name.lower()):
file_path = os.path.join(path,name)
new_name = os.path.join(path,name.lower().replace(old,new))
os.rename(file_path,new_name)
replace(mainpath,'file_1.nii','new_name.nii')
但它会在所有子文件夹中重命名“file_1.nii”。有谁知道如何扩展代码,因此它只会重命名特定子文件夹中的文件,或者有人知道替代解决方案吗?
TIA!
解决方法
将您的 if 条件更改为
let rect = layer.layerRectConverted(fromMetadataOutputRect: box.applying(self.visionToAVFTransform))
如果所有嵌套的第二个子文件夹都具有相同的名称,即 'subfolder2'
更新(2021/03/25):
它对我有用
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。