python如何更改cod的结尾

2024-09-28 17:06:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在想办法编辑这个字符串的结尾:

select_file = AudioSegment.from_(select_file)

我想让它做的是对所选文件的格式(在本例中是一个.wav文件)进行更改,以便为每个文件提取AudioSegment。例如:如果我选择一个“.mp3”文件,音频段.from_wav将更改为AudioSegment.from\ mp3. 你知道吗

我怎样才能做到这一点?似乎任何试图使之灵活的尝试都会导致这个错误

AttributeError: type object 'AudioSegment' has no attribute 'from_SoundFile'

这是完整的代码。你知道吗

for file in os.listdir("Music"):
if file.endswith(".wav") or file.endswith(".mp3"):
    print file

select_file = raw_input("Which file would you like to modify?")
if select_file in os.listdir("Music"):
    os.chdir("Music")
    print select_file
    FileEnd = select_file.split(".")
    print FileEnd[-1]
    select_file = AudioSegment.from_SoundFile[-1](select_file)   

SoundFile = { 'Name': select_file, 'format': FileEnd[-1]}

如何使结尾根据文件结尾而改变?我不需要它来适应任何特定类型的代码,所以任何答案都可以。你知道吗


Tags: 文件代码infromos结尾musicselect
1条回答
网友
1楼 · 发布于 2024-09-28 17:06:26

首先,使用^{}获取文件扩展名是个好主意。你知道吗

filename, file_extension = os.path.splitext('example_song.mp4')

在此之后,您有几个选择正确pydub函数的选项。为了理解API,我建议您先看看documentation,在这里您可以将from_fileformat关键字参数一起使用:

AudioSegment.from_file(filename, format=file_extension)

或使用基于提取的扩展名的函数:

if file_extension == "mp3":
    AudioSegment.from_mp3(output_filename)

pydub source中可以看到from_mp3和类似的内容只是from_file的别名,具有特定的格式。你知道吗

要将其导出到文件中,您可能需要使用AudioSegment^{}方法。你知道吗

相关问题 更多 >