python 如何更改代码结尾
python how to change ending of code
我正在想办法编辑这个字符串的结尾:
select_file = AudioSegment.from_(select_file)
我想让它做的是针对文件 selected 的格式(在本例中为 .wav 文件),更改要为每个文件提取的 AudioSegment。即:如果我 select 一个“.mp3”文件,AudioSegment.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]}
如何使结尾根据文件结尾而改变?我不需要它来适应任何特定类型的代码,所以任何答案都可以。
首先,使用 os.path.splitext
获取文件扩展名是个好主意。
filename, file_extension = os.path.splitext('example_song.mp4')
之后,您可以通过几个选项来选择正确的 pydub 函数。要理解 API,我建议看一下 documentation,您会看到可以将 from_file
与 format
关键字参数一起使用:
AudioSegment.from_file(filename, format=file_extension)
或使用基于您提取的扩展名的功能:
if file_extension == "mp3":
AudioSegment.from_mp3(output_filename)
你可以通过查看 pydub source 看到 from_mp3
和类似的只是 from_file
的别名与某些格式。
然后要将其导出到文件,您可能需要使用 AudioSegment export
方法。
我正在想办法编辑这个字符串的结尾:
select_file = AudioSegment.from_(select_file)
我想让它做的是针对文件 selected 的格式(在本例中为 .wav 文件),更改要为每个文件提取的 AudioSegment。即:如果我 select 一个“.mp3”文件,AudioSegment.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]}
如何使结尾根据文件结尾而改变?我不需要它来适应任何特定类型的代码,所以任何答案都可以。
首先,使用 os.path.splitext
获取文件扩展名是个好主意。
filename, file_extension = os.path.splitext('example_song.mp4')
之后,您可以通过几个选项来选择正确的 pydub 函数。要理解 API,我建议看一下 documentation,您会看到可以将 from_file
与 format
关键字参数一起使用:
AudioSegment.from_file(filename, format=file_extension)
或使用基于您提取的扩展名的功能:
if file_extension == "mp3":
AudioSegment.from_mp3(output_filename)
你可以通过查看 pydub source 看到 from_mp3
和类似的只是 from_file
的别名与某些格式。
然后要将其导出到文件,您可能需要使用 AudioSegment export
方法。