0

我一直在使用此代码将 10 个 .wav 文件转换为 .mp3

song_dir = 'Desktop/Song_test/*wav'
song = glob(song_dir) 
print(song)
for song in song:
    mp3_song = os.path.splitext(song)[0] + '.mp3' 
    sound = pydub.AudioSegment.from_mp3(song)
    sound.export('Desktop/Song_test/Converted/', mp3_song, '.mp3', format="mp3")
print("Conversion Done")

我真正想要实现的是从 Song_Test 中选择 .wav 文件,将其转换为 .mp3 文件,并将其保存在 Song_Test 中名为 Converter 的子目录中。新文件应该具有相同的名称(为此,os.path.splitext当我不尝试将输出保存在不同的目录中时,我尝试使用它,这工作正常,并且转换后的文件与早期文件具有相同的名称。

将其保存在新目录中后,当我运行此代码错误时,会弹出TypeError: export() got multiple values for argument 'format'。请指导我如何做到这一点。

4

1 回答 1

0

尝试像这样编写导出 -

sound.export('Desktop/Song_test/Converted/' + mp3_song, format="mp3")
  1. 使用“+”将“mp3_song”添加到位置/名称字符串。
  2. 添加“.mp3”似乎是多余的,因为它包含在“mp3_song”中。
于 2020-05-24T11:16:28.683 回答