gpt4 book ai didi

python - 更改目录中文件的名称: Python

转载 作者:行者123 更新时间:2023-12-01 02:21:43 25 4
gpt4 key购买 nike

我在目录“dataset”中有 .wav 文件

import os
dataset_path = 'C:/dataset'

def change_filenames(dataset_path):

i = 0 # target filename
for old_name in os.listdir(dataset_path):
os.rename(old_name, str(i) + '.wav')
i+=1

change_filenames(dataset_path)

错误:FileNotFoundError:[WinError 2] 系统找不到指定的文件:'sound1.wav' -> '0.wav'

这个错误是什么意思?该文件位于目录中并且可以通过代码访问,为什么系统不能访问?

最佳答案

正如 Zerodf 指出的,问题可能是您当前的工作目录与您指定的 dataset_path 目录不同。因此,当 os.rename 去重命名 sound1.wav 时,它会在您当前的工作目录中查找它(可能与 dataset_path 不同) >),找不到它,并抛出该错误。

由于您的 dataset_path 变量包含绝对路径,因此您可以通过将每个文件名附加到 上来确保 os.rename 尝试重命名的所有内容都是绝对路径>dataset_path 使用 os.path.join()。即改变

os.rename(old_name, str(i) + '.wav')

os.rename(os.path.join(dataset_path, old_name), os.path.join(dataset_path, str(i) + '.wav'))

然后当os.rename去重命名sound1.wav时,它会寻找C:/dataset/sound1.wav,它应该没有问题地找到。

另请注意,您可以使用 os 中的 getcwd() 函数查看当前工作目录。

import os

print(os.getcwd())

关于python - 更改目录中文件的名称: Python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47893961/

25 4 0
文章推荐: javascript - 将 observable 转换为 observable