Моя структура папок выглядит следующим образомПереименование файлов с помощью вложенных имен папок
Folder A(Parent folder)
Folder B(Sub folder)
1.jpg
2.jpg
3.jpg
4.jpg
Folder B1(Sub folder)
1.jpg
2.jpg
3.jpg
4.jpg
.....
Folder Bn(Sub folder)
1.jpg
2.jpg
...jpg
Как переименовать .jpeg имена файлов с именами папок, подразделам, как этот B-1.jpg B-2.jpg ... и B1-1.jpg, B1-2.jpg ... и Bn-1.jpg, Bn-2.jpg ....
Мой код до сих пор (я принял код от этого question:
import os
path = os.getcwd()
# get all directories
folders = ([name for name in os.listdir(path)
if os.path.isdir(os.path.join(path, name))])
for folder in folders:
for fname in os.listdir(os.path.join(path,folder)):
new_fname = os.path.basename(os.path.join(path,folder)) + fname.split('.') **# I think error is in here**
os.rename(os.path.join(path, fname), os.path.join(path, new_fname))
когда я запускаю код, он просто показывает:
Traceback (most recent call last):
File "<stdin>", line 3, in <module>
TypeError: cannot concatenate 'str' and 'list' objects
Я новичок в python, пожалуйста, помогите и сделайте это полным и совершенным, пожалуйста.
Посмотрите этот пост http://stackoverflow.com/questions/641985/rename-files-python-jython?rq=1 –