我在一个相对简单的脚本中遇到了问题,但显示的错误对我来说是新的:
目标如下: 我有一个父文件夹(测试),其中包含大约 700 个子文件夹(测试 1 - 测试 700) 在这些子文件夹中存储了不同的文件,但我只对 .csv 文件感兴趣,其中每个子文件夹只有一个。不幸的是,这个 csv 文件是通过另一个程序生成的,因此它的名字很古怪。
我想将所有子文件夹中所有 csv 的名称更改为其父子文件夹的名称:
import os
directoryPath=r"C:\...\test"
os.chdir(directoryPath)
folder_list=os.listdir(directoryPath)
subfolder_list=os.walk(directoryPath)
for folders, sub_folders, file in os.walk(directoryPath):
for name in file:
if name.endswith(".csv"):
os.rename(name, subfolder_list)
else:
pass
不幸的是,我收到以下错误:
TypeError: rename: dst 应该是字符串、字节或 os.PathLike,而不是生成器
我阅读了有关此错误的信息 ( Python: TypeError: Can't convert 'generator' object to str implicitly ),但我不确定我是否理解解决方案。
有人有更简单的方法来解决这个问题吗?
问候和感谢