Python 2.7 如何通过Python编码将所有数据文件从多个文件夹移动到其子文件夹?

Python 2.7 如何通过Python编码将所有数据文件从多个文件夹移动到其子文件夹?,python-2.7,Python 2.7,我导入了os和shutil模块来完成这项任务。但当我使用os.path.join root\u dir和fi\u name存储源文件时,它会给出以下错误消息: 无法将str与列表类型连接 我如何完成这项任务 此代码将当前目录和当前目录子目录中的所有文件移动到名为“sub_folder”的新子目录中 import os new_folder_name = 'sub_folder' base_path = os.getcwd() new_folder_add = os.path.join(ba

我导入了
os
shutil
模块来完成这项任务。但当我使用
os.path.join root\u dir和fi\u name
存储源文件时,它会给出以下错误消息:

无法将str与列表类型连接


我如何完成这项任务

此代码将当前目录和当前目录子目录中的所有文件移动到名为“sub_folder”的新子目录中

import os


new_folder_name = 'sub_folder'
base_path = os.getcwd()

new_folder_add = os.path.join(base_path, new_folder_name)
if not os.path.isdir(new_folder_add):
    os.mkdir(new_folder_name)

walk = os.walk(base_path)
for level in walk:
    if level[0] == new_folder_add:
        continue
    for fname in level[2]:
        file_add = os.path.join(level[0], fname)
        new_file_add = os.path.join(new_folder_add, fname)
        # this will replace if there exists an other file with new_file_add address
        os.rename(file_add, new_file_add)

正如错误消息所说,您的文件名是一个列表;可能是一个文件名列表。是的。。对的我有许多文件夹存储在一个列表中,我从“for”循环操作这些文件夹,还有许多文件,我从“for”循环再次处理它们,因为这也是从列表访问的。谢谢Farbod Shahinfar:我会清楚地告诉你我的问题。例如,我有两个文件夹叫“福特”和“现代”。每个文件夹“Ford”和“Hyundai”都有一个子文件夹“Archive”,用于存储旧数据文件。我想将所有文件分别移动到其“归档”文件夹中。我的代码是: