[英]Python: Changing filenames and folder names in all folders and subfolders
[英]python append folder name to filenames in all sub folders
我試圖將文件夾的名稱附加到該文件夾中的所有文件名。 我必須遍歷包含子文件夾的父文件夾。 我必須在Python中執行此操作,而不是bat文件。
例如,拿這些文件夾:
Parent Folder
Sub1
example01.txt
example01.jpg
example01.tif
Sub2
example01.txt
example01.jpg
example01.tif
對此
Parent Folder
Sub1
Sub1_example01.txt
Sub1_example01.jpg
Sub1_example01.tif
Sub2
Sub2_example01.txt
Sub2_example01.jpg
Sub2_example01.tif
我相信它的os.rename,但我無法解決如何調用文件夾名稱。
謝謝你的建議。
我會在root上使用os.path.basename
來查找你的前綴。
import os
for root, dirs, files in os.walk("Parent"):
if not files:
continue
prefix = os.path.basename(root)
for f in files:
os.rename(os.path.join(root, f), os.path.join(root, "{}_{}".format(prefix, f)))
之前
> tree Parent
Parent
├── Sub1
│ ├── example01.jpg
│ ├── example02.jpg
│ └── example03.jpg
└── Sub2
├── example01.jpg
├── example02.jpg
└── example03.jpg
2 directories, 6 files
后
> tree Parent
Parent
├── Sub1
│ ├── Sub1_example01.jpg
│ ├── Sub1_example02.jpg
│ └── Sub1_example03.jpg
└── Sub2
├── Sub2_example01.jpg
├── Sub2_example02.jpg
└── Sub2_example03.jpg
2 directories, 6 files
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.